Showing posts with label software. Show all posts
Showing posts with label software. Show all posts

10 Best Hacking and Security Software Tools for Linux

Tuesday, July 1, 2008

Linux is a hacker’s dream computer operating system. It supports tons of tools and utilities for cracking passwords, scanning network vulnerabilities, and detecting possible intrusions. I have here a collection of 10 of the best hacking and security software tools for Linux. Please always keep in mind that these tools are not meant to harm, but to protect.

1. John the Ripper

John the Ripper is a free password cracking software tool initially developed for the UNIX operating system. It is one of the most popular password testing/breaking programs as it combines a number of password crackers into one package, autodetects password hash types, and includes a customizable cracker. It can be run against various encrypted password formats including several crypt password hash types most commonly found on various Unix flavors (based on DES, MD5, or Blowfish), Kerberos AFS, and Windows NT/2000/XP/2003 LM hash. Additional modules have extended its ability to include MD4-based password hashes and passwords stored in LDAP, MySQL and others.


2. Nmap

Nmap is my favorite network security scanner. It is used to discover computers and services on a computer network, thus creating a "map" of the network. Just like many simple port scanners, Nmap is capable of discovering passive services on a network despite the fact that such services aren't advertising themselves with a service discovery protocol. In addition Nmap may be able to determine various details about the remote computers. These include operating system, device type, uptime, software product used to run a service, exact version number of that product, presence of some firewall techniques and, on a local area network, even vendor of the remote network card.

Nmap runs on Linux, Microsoft Windows, Solaris, and BSD (including Mac OS X), and also on AmigaOS. Linux is the most popular nmap platform and Windows the second most popular.


3. Nessus

Nessus is a comprehensive vulnerability scanning software. Its goal is to detect potential vulnerabilities on the tested systems such as:

-Vulnerabilities that allow a remote cracker to control or access sensitive data on a system.
-Misconfiguration (e.g. open mail relay, missing patches, etc).
-Default passwords, a few common passwords, and blank/absent passwords on some system accounts. Nessus can also call Hydra (an external tool) to launch a dictionary attack.
-Denials of service against the TCP/IP stack by using mangled packets

Nessus is the world's most popular vulnerability scanner, estimated to be used by over 75,000 organizations worldwide. It took first place in the 2000, 2003, and 2006 security tools survey from SecTools.Org.


4. chkrootkit

chkrootkit (Check Rootkit) is a common Unix-based program intended to help system administrators check their system for known rootkits. It is a shell script using common UNIX/Linux tools like the strings and grep commands to search core system programs for signatures and for comparing a traversal of the /proc filesystem with the output of the ps (process status) command to look for discrepancies.

It can be used from a "rescue disc" (typically a Live CD) or it can optionally use an alternative directory from which to run all of its own commands. These techniques allow chkrootkit to trust the commands upon which it depend a bit more.

There are inherent limitations to the reliability of any program that attempts to detect compromises (such as rootkits and computer viruses). Newer rootkits may specifically attempt to detect and compromise copies of the chkrootkit programs or take other measures to evade detection by them.


5. Wireshark

Wireshark is a free packet sniffer computer application used for network troubleshooting, analysis, software and communications protocol development, and education. In June 2006, the project was renamed from Ethereal due to trademark issues.

The functionality Wireshark provides is very similar to tcpdump, but it has a GUI front-end, and many more information sorting and filtering options. It allows the user to see all traffic being passed over the network (usually an Ethernet network but support is being added for others) by putting the network interface into promiscuous mode.

Wireshark uses the cross-platform GTK+ widget toolkit, and is cross-platform, running on various computer operating systems including Linux, Mac OS X, and Microsoft Windows. Released under the terms of the GNU General Public License, Wireshark is free software.


6. netcat

netcat is a computer networking utility for reading from and writing to network connections on either TCP or UDP.

Netcat was voted the second most useful network security tool in a 2000 poll conducted by insecure.org on the nmap users mailing list. In 2003, it gained fourth place, a position it also held in the 2006 poll.

The original version of netcat is a UNIX program. Its author is known as *Hobbit*. He released version 1.1 in March of 1996.

Netcat is fully POSIX compatible and there exist several implementations, including a rewrite from scratch known as GNU netcat.


7. Kismet

Kismet is a network detector, packet sniffer, and intrusion detection system for 802.11 wireless LANs. Kismet will work with any wireless card which supports raw monitoring mode, and can sniff 802.11a, 802.11b and 802.11g traffic.

Kismet is unlike most other wireless network detectors in that it works passively. This means that without sending any loggable packets, it is able to detect the presence of both wireless access points and wireless clients, and associate them with each other.

Kismet also includes basic wireless IDS features such as detecting active wireless sniffing programs including NetStumbler, as well as a number of wireless network attacks.


8. hping

hping is a free packet generator and analyzer for the TCP/IP protocol. Hping is one of the de facto tools for security auditing and testing of firewalls and networks, and was used to exploit the idle scan scanning technique (also invented by the hping author), and now implemented in the Nmap Security Scanner. The new version of hping, hping3, is scriptable using the Tcl language and implements an engine for string based, human readable description of TCP/IP packets, so that the programmer can write scripts related to low level TCP/IP packet manipulation and analysis in very short time.

Like most tools used in computer security, hping is useful to both system administrators and crackers (or script kiddies).


9. Snort

Snort is a free and open source Network Intrusion prevention system (NIPS) and network intrusion detection (NIDS) capable of performing packet logging and real-time traffic analysis on IP networks.

Snort performs protocol analysis, content searching/matching, and is commonly used to actively block or passively detect a variety of attacks and probes, such as buffer overflows, stealth port scans, web application attacks, SMB probes, and OS fingerprinting attempts, amongst other features. The software is mostly used for intrusion prevention purposes, by dropping attacks as they are taking place. Snort can be combined with other software such as SnortSnarf, sguil, OSSIM, and the Basic Analysis and Security Engine (BASE) to provide a visual representation of intrusion data. With patches for the Snort source from Bleeding Edge Threats, support for packet stream antivirus scanning with ClamAV and network abnormality with SPADE in network layers 3 and 4 is possible with historical observation.


10. tcpdump

tcpdump is a common computer network debugging tool that runs under the command line. It allows the user to intercept and display TCP/IP and other packets being transmitted or received over a network to which the computer is attached.

In some Unix-like operating systems, a user must have superuser privileges to use tcpdump because the packet capturing mechanisms on those systems require elevated privileges. However, the -Z option may be used to drop privileges to a specific unprivileged user after capturing has been set up. In other Unix-like operating systems, the packet capturing mechanism can be configured to allow non-privileged users to use it; if that is done, superuser privileges are not required.

The user may optionally apply a BPF-based filter to limit the number of packets seen by tcpdump; this renders the output more usable on networks with a high volume of traffic.


Do you have a favorite security software tool for Linux? Feel free to comment and tell us about it.

Free/Open-source File Managers

Friday, June 20, 2008

A computer program that provides a user interface to work with file systems is called a file manager. It is considered as one of the most important software applications since its main function is to speed up interaction with files. The most common operations of a file manager are create, open, edit, view, print, play, rename, move, copy, delete, attributes, properties, search/find, and permissions. Others have special functions such as network connectivity and the ability to extend operations utilizing user written scripts.

Since I have used several Linux distributions, I have already tried different kinds of file managers/browsers be it graphical or orthodox. So, here I made a list of some of the best free and open source file managers as a guide to those who are looking for one that will suit their needs.

Dolphin
Dolphin is a file manager for KDE. It is the default file manager for the current version, KDE 4, and can be optionally installed on KDE 3. Although replaced as the default file manager for KDE 4, Konqueror is still the default web browser, and can be used as an alternative file manager for power users.

Under previous KDE versions, Konqueror had served both as the default file manager and web browser. However, for many years users have criticized that Konqueror was too complex for simple file navigation. As a response, the two functions were divided into two separate applications. Under KDE 4, Dolphin was streamlined for browsing files, while sharing as much code as possible with Konqueror. Konqueror continues to be developed primarily as a web browser.


7-Zip
7-Zip is a free and open source file archiver designed originally for Microsoft Windows, and later made available to other computer operating systems. In the form of p7zip, the command-line version of 7-Zip has been ported for use on Unix-like systems such as GNU/Linux, BSD, and Mac OS X as well as AmigaOS. It is also compatible with DOS via either a DOS port, or by using the HX-DOS extender to run the Windows command-line version.

7-Zip began in 2000 and is actively developed by Igor Pavlov. In contrast to the market-leading programs WinZip and WinRAR, which remain as proprietary competitors, 7-Zip is distributed under the terms of the GNU Lesser General Public License (LGPL) (with the RAR license restrictions), and as such is free software.

7-Zip was the winner of the SourceForge.net 2007 community choice awards for "Technical Design" and for "Best Project".


emelFM2
emelFM2 is an orthodox file manager which utilizes the GTK+ 2 for X11 on Unix-like operating systems. The default window layout is two filesystem directories in the left and right panes similar to that found in Norton Commander, a strip down the middle with commonly used commands to operate on files in one or both of these browsing panes, and a log which shows the output of commands at the bottom. This layout is configurable - for example, the panes can be reorganized so that the directory panes are stacked vertically or it can be set to have only one directory pane. The colors, icons, included functions and file descriptor columns are all configurable.

emelFM2 ships with the function keys bound to the common commands which keybindings can be customized.

emelFM2 can handle archives and mounted filesystems. Every feature, including user-created functions, can be used through the GUI or with keyboard shortcuts.


GNOME Commander
GNOME Commander is a 'two pane' graphical file manager for GNOME. It is built using the GTK+ toolkit and GnomeVFS. GNOME Commander aims to fulfill the demands of more advanced users who like to focus on file management, their work through special applications and running smart commands.

Konqueror
Konqueror is a web browser, file manager and file viewer designed as a core part of the K Desktop Environment. It is developed by volunteers and can run on most Unix-like operating systems. Konqueror, along with the rest of the components in the kdebase package, is licensed and distributed under the GNU General Public License.

The name "Konqueror" is a reference to the two primary competitors at the time of the browser's first release: "first come the Navigator, then Explorer, and then the Konqueror". It also follows the KDE naming convention: the names of most KDE programs begin with the letter K.

Konqueror came with the version 2 of KDE, released on October 23 of 2000. It replaces its predecessor, KFM (KDE file manager).


Krusader
Krusader is an advanced orthodox file manager for KDE and other desktops in the *nix world, similar to GNOME Commander or Midnight Commander (Linux), or Total Commander (Windows). It supports extensive archive handling, mounted filesystem support, FTP, advanced search, viewer/editor, directory synchronisation, file content comparisons, batch renaming, etc.

It supports the following archive formats: tar, ZIP, bzip2, gzip, RAR, ace, ARJ, LHA, 7-zip and RPM and can handle other KIO Slaves such as smb or fish.

GNU Midnight Commander
GNU Midnight Commander (mc) is an orthodox file manager for Unix-like systems (also works in Windows) and a clone of Norton Commander.

Midnight Commander is a text mode application. The main interface consists of two panels which display the file system. It is used in a similar way to many other programs run in the Unix shell. Arrow keys control file selection, the insert key is used to select files and the Function Keys perform operations such as renaming, editing and copying files. Later versions of the Midnight Commander additionally have mouse support for easier operation. Such versions are aware of running inside an X terminal, which allows them to react to the graphical pointer and update the name of the window in which Midnight Commander runs.


Nautilus
Nautilus is the official file manager for the GNOME desktop. The name is a play on words, evoking the shell of a nautilus to represent an operating system shell. Nautilus replaced Midnight Commander in GNOME 1.4 and was the default from version 2.0 onwards.

Nautilus was the flagship product of the now-defunct Eazel Inc. Released under the GNU Lesser General Public License, Nautilus is free software.


PCMan File Manager
PCMan File Manager (PCManFM) is a file manager application developed by Hong Jen Yee which is meant to be a replacement for Nautilus, Konqueror and Thunar. Released under the GNU General Public License, PCManFM is free software.

PCManFM is intended to follow the specifications given by Freedesktop.org for interoperability in free software.

ROX-Filer
ROX-Filer is a minimalist graphical file manager for the X Window System. It can be used on its own as a file manager, or can be used as part of ROX Desktop, a complete graphical desktop environment for Unix-like computer operating systems. It is the file manager provided by default in certain Linux distributions such as Puppy Linux and Dyne:bolic.

ROX-Filer is built using the GTK+ toolkit. Available under the terms of the GNU General Public License, ROX-Filer is free software.

Thunar
Thunar is a file manager for Linux and other Unix-like systems, written using the GTK+ 2 toolkit and shipped with Xfce version 4.4 RC1 and later. Thunar is developed by Benedikt Meurer, and was originally intended to replace XFFM, Xfce's previous file manager. Thunar was initially called Filer but was changed to Thunar due to a name clash.

The main goal of the Thunar project is to create a file manager that is fast, clean, and easy to use. It is designed to start up faster and be more responsive than other Linux file managers, such as Nautilus and Konqueror. Accessibility, another goal of the project, is accomplished using Assistive Technologies (i.e., GNOME Accessibility Toolkit). Like the rest of Xfce, Thunar is designed to comply with standards, such as those stated at freedesktop.org. Thunar is simple and lightweight by design, but its functionality can be extended through plugins.


Five of the Best Free/Open-source Wiki Software

Friday, May 23, 2008

Wiki software is a kind of collaborative software that runs a wiki system. This usually allows web pages to be created and edited using a common web browser. It is generally implemented as a software engine that runs on one or more web servers, with the content stored in a file system, and content changes kept in a relational database management system.

In addition to the Wiki engine itself that employs the wiki technology, Wiki software could include all of the software required to run a wiki, which might contain a web server such as Apache. In some cases, like in ProjectForum, or in some WikiServers, the web server and wiki engine are bundled together as one self-contained system that can often make them easier to install.

The most popular of Wiki engines are Free/Open-source software, often available under the GNU General Public License (GPL). I have here a list of five of the most widely used Wiki software at present:

TWiki
TWiki is a structured wiki, typically used to run a collaboration platform, knowledge or document management system, a knowledge base, or team portal. Users can create wiki applications using the TWiki Markup Language, and developers can extend its functionality with plugins.

Major features:
* Revision control - complete audit trail, also for metadata such as attachments and access control settings
* Fine-grained access control - restrict read/write/rename on site level, web level, page level based on user groups
* Extensible TWiki markup language
* TinyMCE based WYSIWYG editor
* Dynamic content generation with TWiki variables
* Forms and reporting - capture structured content, report on it with searches embedded in pages
* Built in database - users can create wiki applications using the TWiki Markup Language
* Skinneable user interface
* RSS/Atom feeds and e-mail notification
* Hundreds of plugins


MoinMoin
MoinMoin is a wiki engine implemented in Python, initially based on the PikiPiki wiki engine.

The feature set of fine grained access control, simple user groups, GUI editor, easy install, simple but efficient spam protection, easy theming combined with a simple code base makes it often the wiki of choice for many open source projects like Apache, Debian, Ubuntu, and Fedora, as well as many corporate wikis.


MediaWiki
MediaWiki is a web-based wiki software application used by all projects of the Wikimedia Foundation, all wikis hosted by Wikia, and many other wikis, including some of the largest and most popular ones. Originally developed to serve the needs of the free content Wikipedia encyclopedia, today it has also been deployed by companies for internal knowledge management, and as a content management system. Notably, Novell uses it to operate several of its high traffic websites.

MediaWiki is written in the PHP programming language, and can use either the MySQL or PostgreSQL relational database management system. MediaWiki is distributed under the terms of the GNU General Public License while its documentation is released under the GFDL and partly in the public domain, making it free and open source software.

The current software was originally written for Wikipedia by Lee Daniel Crocker, based on the user interface design of Magnus Manske, a developer and student of the University of Cologne. Wikipedia had originally used a small wiki engine called UseModWiki written in Perl. Wikipedia was later switched to Manske's PHP-based software to offer more functionality. Increasing usage caused load problems, leading Crocker to re-write the software with a more scalable MySQL database backend. Later, Brion Vibber would take up the role of release manager and most active developer.


PmWiki
PmWiki is free wiki software written by Patrick R. Michaud in the PHP programming language.

PmWiki is designed to be easy to install and customize as an engine for creating professional web sites with one to any number of content authors. The software focuses on ease-of-use, so people with little IT or wiki experience will be able to put it to use. Despite having such low barriers to install a basic wiki, the software is also designed to be extremely extensible and customizable.

The PmWiki wiki markup shares similarities with MediaWiki (used by Wikipedia). The PmWiki markup engine is highly customizable, allowing adding, modifying or disabling markup rules, and it can support other markup languages. As an example, the WikiCreole specifications can be enabled.


DokuWiki
DokuWiki is wiki software aimed at small companies' documentation needs. DokuWiki is licensed under GPL 2 and written in the programming language PHP. It works on plain text files and thus needs no database. Its syntax is similar to the one used by MediaWiki and makes sure the data files remain readable outside the wiki.

Main features:
* Revision control - stores all versions of each wiki page, allowing the user to compare the current version with any older version.
* Access control - can be handled by a user manager which allows users and groups of users to be defined, and an access control list where an admin user can define permissions on page and namespace level.
* Plugins - has a generic plugin interface which simplifies the process of writing and maintaining plugins. There are over 300 plugins available.
* Templates - the appearance of the wiki can be defined by a template. There are already various templates provided by the development community.
* Internationalization and localization - supports Unicode (UTF-8), so languages such as Chinese, Thai, and Hebrew can be displayed. DokuWiki can be configured in about 40 languages.
* Caching - stores the rendered output of parsed wiki pages to reduce server load.
* Full text search - has an integrated indexed search with which a user can search for keywords on the wiki.

What wiki software are you using? Tell us about it by leaving us a comment.

Free/Open-source Statistical Software

Tuesday, May 20, 2008

If you are looking for a computer program that can help you get the results of standard statistical procedures and statistical significance tests without the need for low-level numerical programming, then a statistical package is what you need.

A statistical package is a suite of computer programs that are specialized for statistical analysis. Most statistical packages also provide facilities for data management. Statistical software is both available commercially and for free. However, I can only recommend those that are free and open source not only for the reason that it comes without a price tag, but also because it has the same quality as most of those that are proprietary.

I have here a list of some of the most known Free and Open source statistical packages as a guide to those who are looking for one:

HippoDraw
HippoDraw is a powerful object oriented statistical data analysis package written in C++, with user interaction via a Qt-based GUI and a Python scriptable interface. It is being developed by Paul Kunz at SLAC, primarily for the analysis and presentation of particle physics and astrophysics data, but can be equally well used in other fields where data handling is important.

HippoDraw uses ROOT and implements many of the features also found in Java Analysis Studio. HippoDraw by default reads and writes files in an XML-based format, and can also read astrophysics FITS files and read data objects produced by ROOT.

HippoDraw can be used as a Python extension module, allowing users to use HippoDraw data objects with the full power of the Python language. This includes other scientific Python extension modules such Numeric and numarray, whose use with HippoDraw can lead to a large increase in processing speed, even for ROOT objects.


gretl
gretl is an open-source software application for compiling and interpreting data mainly for econometrics. It is an acronym for Gnu Regression, Econometrics and Time-series Library. It has a graphical user interface and can be used together with X-12-ARIMA, TRAMO/SEATS, and R. It is written in C, uses GTK as widget toolkit for creating its GUI, and uses gnuplot for generating graphs. As a complement to the GUI it also has a command line interface.

gretl includes the possibility to output models as LaTeX files. Its own data format is XML, and it can also import Excel, Gnumeric, OpenDocument Spreadsheet, Stata, EViews, RATS 4, GNU Octave, Comma Separated Values, PcGive, JMulTi, and ASCII files. It can export to GNU Octave, GNU R, Comma Separated Values, JMulTi, and PcGive file formats.

Besides English, gretl is also available in Basque, German, French, Italian, Polish, Portuguese and Spanish.


OpenEpi
OpenEpi is a free, web-based, open source, operating system-independent series of programs for use in epidemiology, biostatistics, public health, and medicine, providing a number of epidemiologic and statistical tools for summary data OpenEpi was developed in JavaScript and hypertext markup language (HTML) and can be run in browsers supporting these languages, such as Microsoft Explorer, Mozilla Firefox, Safari, and Opera, on a number of operating systems, such as Microsoft Windows, Macintosh, and Linux. The program can be run from the OpenEpi website or downloaded and run without a web connection. The source code and documentation is downloadable and freely available for use by other investigators.


Ploticus
Ploticus is a free, GPL, non-interactive software package for producing plots, charts, and graphics from data. It was developed in a Unix/C environment and runs on various Unix, Linux, and win32 systems. Ploticus is good for automated or just-in-time graph generation, handles date and time data nicely, and has basic statistical capabilities. It allows significant user control over colors, styles, options and details.


R (programming language)
The R programming language, sometimes described as GNU S, is a programming language and software environment for statistical computing and graphics. It was originally created by Ross Ihaka and Robert Gentleman at the University of Auckland, New Zealand, and is now developed by the R Development Core Team. R is considered by its developers to be an implementation of the S programming language, with semantics derived from Scheme. The name R comes partly from the first name of the two original authors, and partly as a word play on the name 'S'. The S language has become a de facto standard among statisticians for the development of statistical software.

R is widely used for statistical software development and data analysis. R's source code is freely available under the GNU General Public License, and pre-compiled binary versions are provided for Microsoft Windows, Mac OS X, and several Linux and other Unix-like operating systems. R uses a command line interface, though several graphical user interfaces are available.


Shogun
Shogun is written in C++. It offers numerous algorithms and data structures for machine learning problems.

The focus of Shogun is on kernel machines such as support vector machines for regression and classification problems. Shogun also offers a full implementation of Hidden Markov models. The core software itself is written in C++ and offers interfaces for MATLAB, Octave, Python and R. Shogun has been under active development since 1999. Today there is a vibrant user community all over the world using Shogun as a base for research and education, and contributing to the core package.

As Shogun was developed with bioinformatics applications in mind it is capable of processing huge datasets consisting of up to 10 million samples. Shogun supports the use of pre-calculated kernels. It is also possible to use a combined kernel i.e. a kernel consisting of a linear combination of arbitrary kernels over different domains. The coefficients or weights of the linear combination can be learned as well. For this purpose Shogun offers a multiple kernel learning functionality.


ROOT
ROOT is an object-oriented software package developed by CERN. It was originally designed for particle physics data analysis and contains several features specific to this field, but it is also commonly used in other applications such as astronomy and data mining.


Weka
Weka (Waikato Environment for Knowledge Analysis) is a popular suite of machine learning software written in Java, developed at the University of Waikato. Weka is a collection of machine learning algorithms for data mining tasks. The algorithms can either be applied directly to a dataset or called from your own Java code. Weka contains tools for data pre-processing, classification, regression, clustering, association rules, and visualization. It is also well suited for developing new machine learning schemes.


JMulTi
JMulTi is an open-source interactive software for econometric analysis, specialised in univariate and multivariate time series analysis. It has a Java graphical user interface.


12 of the Best Media Players for Linux

Tuesday, April 29, 2008

One of the many perks of being a Linux user is that you have plenty of excellent software to choose from. This is especially true if you are in search for an essential application like a media player because there are definitely loads of options. However, this could sometimes be a disadvantage particularly to new-to-Linux users for the reason that they could get overwhelmed with the many choices they have.

To somehow guide those who are still looking for a media player that will suit their needs, I have put together a list that I hope will help. Take your pick from 12 of the best and certified quality media players for Linux.

Banshee
Banshee is a free audio player for GNU/Linux operating systems that is built upon Mono and Gtk#. It uses the GStreamer multimedia platform for encoding, and decoding various music formats, including Ogg Vorbis, MP3 and FLAC. Banshee can play, import and burn audio CDs, but it can not synchronize music with any portable media players, including Apple's iPod and Creative Zen players, in the current version. Music stored on the iPod can be played without synchronization, and album art stored in the Banshee library is transferred to the iPod. Support for MTP and PlaysForSure devices, as well as the Rio Karma player is planned for the near future.


Rhythmbox
Rhythmbox is an audio player that plays and helps organize digital music. Originally inspired by Apple's iTunes, it is free software, designed to work well under the GNOME Desktop using the GStreamer media framework. It is currently under active development.

Playback from a variety of digital music sources is supported, excluding MIDI. The most common playback is music stored locally as files on the computer (the 'Library'). Rhythmbox supports playing streamed Internet radio and podcasts as well. The Replay Gain standard is supported.


Totem
Totem is a free software media player (audio and video) for the GNOME computer desktop environment that runs on Linux, Solaris, BSD and other Unix and Unix-like systems. It is officially included in GNOME starting from version 2.10 (released in March 2005), but de facto it was already included in most GNOME environments. The default backend is GStreamer framework but Totem can also use xine libraries. Totem is included as the default media player in many desktop Linux distributions, including Ubuntu, Mandriva Linux and others.

Thanks to a large number of plugins developed for GStreamer, Totem is able to play all mainstream media formats, both open and proprietary ones. It also understands numerous playlist formats, including SHOUTcast, M3U, XML Shareable Playlist Format (XSPF), SMIL, Windows Media Player playlists and RealAudio playlists. Playlists are easily manageable using drag-and-drop features.


Amarok

Amarok is a free software music player for Linux or other varieties of Unix. It makes use of core components from the K Desktop Environment, but is released independently of the central KDE release cycle.

Amarok serves many functions rather than just playing music files. For example, Amarok can be used to organize a library of music into folders according to genre, artist, and album, can edit tags attached to most music formats, associate album art, attach lyrics, and automatically "score" music as it is played.

Here are the primary functions or uses for Amarok:
* Playing media files in various formats including but not limited to (depending on the setup) FLAC, Ogg, MP3, AAC, WAV, Windows Media Audio, Apple Lossless, WavPack, TTA and Musepack. Amarok does not play digital music files embedded with DRM.
* Tagging digital music files (currently FLAC, Ogg, WMA, AAC, MP3, and RealMedia).
* Associating cover art with a particular album, and retrieving the cover art from Amazon
* Creating and editing playlists, including smart and dynamic playlists. The dynamic playlists can use such information as the "score" given to a song by an Amarok script, and the playcount which is stored with the song.
* Synchronizing, retrieving, playing, or uploading music to the following digital music players: iPod, iriver iFP, Creative NOMAD, Creative ZEN, MTP, Rio Karma and USB devices with VFAT (generic MP3 players) support.
* Displaying artist information from Wikipedia and retrieving song lyrics.
* Last.fm support, including submitting played tracks (including those played on some digital music players) to Last.fm, retrieving similar artists, and playing Last.fm streams.
* Podcast


xine
xine is a multimedia playback engine for Unix-like operating systems released under the GNU General Public License. xine is built around a shared library (xine-lib) that supports different frontend player applications. Another important feature of xine is the ability to manually correct the synchronization of audio and video streams. xine uses libraries from other projects such as liba52, libmpeg2, FFmpeg, libmad, FAAD2, and Ogle. xine can also use binary Windows codecs through a wrapper, bundled as the w32codecs, for playback of some media formats that are not handled natively.


Exaile
Exaile is a music player aiming to be similar to KDE's Amarok, but for GTK+ and written in Python. It incorporates many of the cool things from Amarok (and other media players) like automatic fetching of album art, handling of large libraries, lyrics fetching, artist/album information via Wikipedia, Last.fm submission support, and optional iPod support via a plugin.

In addition, Exaile also includes a built-in SHOUTcast directory browser, tabbed playlists (so you can have more than one playlist open at a time), blacklisting of tracks (so they don't get scanned into your library), downloading of guitar tablature from fretplay.com, and submitting played tracks on your iPod to Last.fm.


KPlayer
KPlayer is a multimedia player for the KDE desktop environment. KPlayer uses MPlayer as the backend for playing multimedia files and provides a variety of additional features.

Features include:
* video, audio and subtitle playback from file, URL, DVD, Video CD, Audio CD, TV, DVB, and KIO Slaves;
* volume, contrast, brightness, hue and saturation controls;
* zooming, full screen and fixed aspect options;
* status and progress display and seeking;
* multimedia library to organize your media files and streams;
* configuration dialog;
* file properties for setting file specific options.


Kaffeine
Kaffeine is a media player for Unix-like operating systems running KDE.

By default it uses xine-lib media framework but also supports GStreamer. It also supports the use of MPlayer project's binary codecs for proprietary formats. Kaffeine developers have also produced a Mozilla plugin to start the player for streaming content over the web.

Features include streaming, DVB, DVD, Video CD and CD audio.


Audacious
Audacious is a GUI-based free software media player for POSIX systems, such as Linux.

It is a fork of Beep Media Player 0.9.7.1, which is itself a fork of XMMS. William "nenolod" Pitcock decided to fork Beep Media Player after the original development team announced that they were stopping development, in order to create a next-gen version, BMPx.

The reasons for the fork were purely technical. There were some quirks in Beep Media Player that had annoyed users, such as the ID3v2 tag handling, which had been reported as buggy by some users. The developers also had their own ideas about how a player should be designed, which they wanted to try in a production environment. Besides, Beep Media Player allegedly lacked functionalities that were considered useful for people who did streaming, such as support for an XMMS-like "songchange plugin".


XMMS2
XMMS2 (X-platform Music Multiplexing System 2) is a new generation of the XMMS audio player. It is a new design, written from scratch, separate from the XMMS codebase. While Peter Alm, one of the original authors of XMMS, was responsible for the initial design and coding of XMMS2 (late 2002 to early 2003), he has since passed on the responsibility of furthering the project to Tobias Rundström and Anders Gustafsson.


MPlayer
MPlayer is a free and open source media player distributed under the GNU General Public License. The program is available for all major operating systems, including Linux and other Unix-like systems; Microsoft Windows and Mac OS X. Versions for OS/2, AmigaOS and MorphOS are also available. The Windows versions work with some minor problems, and also in DOS using HX DOS Extender. A port for DOS using DJGPP is also available.

MPlayer supports a wide variety of media formats. In addition to its wide range of supported formats MPlayer can also save all streamed content to a file.

MPlayer is a command line application that has different optional GUIs for each of its supported operating systems. Commonly used GUIs are gmplayer (the default GUI for GNU/Linux and other Unix-like systems, and Microsoft Windows), MPlayer OS X (for Mac OS X), MPUI (for Windows) and WinMPLauncher (also for Windows). Several other GUI frontends are also available for each platform.


VLC
VLC media player is a portable multimedia player, encoder, and streamer supporting many audio and video codecs and file formats as well as DVDs, VCDs, and various streaming protocols. It is able to stream over networks and to transcode multimedia files and save them into various different formats. VLC used to stand for VideoLAN Client, but that meaning is now deprecated.

VLC uses a large number of free decoding and encoding libraries. Many of its codecs are provided by the libavcodec codec library from the FFmpeg project, but it uses mainly its own muxer and demuxers. It also gained distinction as the first player to support playback of encrypted DVDs on Linux by using the libdvdcss DVD decryption library.

Version 0.8.6, which adds support for WMV version 9 and enhances support for H.264, was released on 10 December 2006.


Free/Open-source Multimedia File Formats

Saturday, April 12, 2008

A Multimedia file format is a particular way to encode multimedia files such as audio, video, and images for storage in a computer file.

Some of the most known closed-source multimedia formats are MP3, WMV, and QuickTime. However, I prefer to utilize free and open-source multimedia file formats because their full specifications are freely available and for which there are no restrictions (e.g. legal or technical) on their use. They are also good for interoperability and to prevent vendor lock-in.

Here are some of the most widely-used free/open-source multimedia file formats.

Portable Network Graphics
Portable Network Graphics (PNG) is a bitmapped image format that employs lossless data compression. PNG was created to improve upon and replace the GIF format, as an image-file format not requiring a patent license. The PNG initialism is optionally recursive, unofficially standing for “PNG's Not GIF”.

PNG supports palette-based (palettes of 24-bit RGB colors), greyscale or RGB images. PNG was designed for transferring images on the Internet, not professional graphics, and so does not support other color spaces (such as CMYK).

PNG files nearly always use file-extension "PNG" or "png" and are assigned MIME media type "image/png".


Multiple-image Network Graphics

Multiple-image Network Graphics (MNG) is a public graphics file format for animated images.
MNG is closely related to the PNG image format. When PNG development started in early 1995, developers decided not to incorporate support for animation, not least because this feature of GIF was seldom used at the time. However, work soon started on MNG as an animation-supporting version of PNG. Version 1.0 of the MNG specification was released on January 31, 2001.

MNG is currently not as widely supported as PNG. Nonetheless, Konqueror has native MNG support, and MNG plugins are available for most other web browsers. Mozilla browsers and Netscape 6.0, 6.01 and 7.0 included native support for MNG until the code was removed in 2003 due to code size and little actual usage, causing complaints on the Mozilla development site. As a result, a MNGzilla project was started to offer patched Mozilla and Firefox browsers. Neither Internet Explorer nor Safari currently supports MNG. Recent Sony Ericsson phones support MNG files in their themes.

Scalable Vector Graphics
Scalable Vector Graphics (SVG) is an XML specification and file format for describing two-dimensional vector graphics, both static and animated. SVG can be purely declarative or may include scripting. Images can contain hyperlinks using outbound simple XLinks. It is an open standard created by the World Wide Web Consortium's SVG Working Group.


Ogg is a multimedia container format, and the native file and stream format for the Xiph.org multimedia codecs. As with all Xiph.org technology, it is an open format free for anyone to use.

As with most container formats, it encapsulates raw compressed data and allows the interleaving of audio and video data inside a single convient format. Other examples of container formats are Quicktime .mov, the MPEG program stream, and AVI.

In addition to encapsulation and interleave of multiple data streams, Ogg provides packet framing, error detection, and periodic timestamps for seeking, and in a small, bounded percentage bitrate overhead.

Ogg is a stream oriented container, meaning it can be written and read in one pass, making it a natural fit for internet streaming and use in processing pipelines. This stream orientation is the major design difference over other file-based container formats.

Vorbis
Vorbis is a free and open source, lossy audio codec project headed by the Xiph.Org Foundation and intended to serve as a replacement for MP3. It is most commonly used in conjunction with the Ogg container and is therefore called Ogg Vorbis.

Vorbis development began following a September 1998 letter from Fraunhofer Gesellschaft announcing plans to charge licensing fees for the MP3 audio format. Soon after, founder Christopher "Monty" Montgomery commenced work on the project and was assisted by a growing number of other developers. They continued refining the source code until a stable version 1.0 of the codec was released on July 19, 2002.


FLAC stands for Free Lossless Audio Codec, an audio format similar to MP3, but lossless, meaning that audio is compressed in FLAC without any loss in quality. This is similar to how Zip works, except with FLAC you will get much better compression because it is designed specifically for audio, and you can play back compressed FLAC files in your favorite player (or your car or home stereo, see supported devices) just like you would an MP3 file.

FLAC stands out as the fastest and most widely supported lossless audio codec, and the only one that at once is non-proprietary, is unencumbered by patents, has an open-source reference implementation, has a well documented format and API, and has several other independent implementations.


Speex is an Open Source/Free Software patent-free audio compression format designed for speech. The Speex Project aims to lower the barrier of entry for voice applications by providing a free alternative to expensive proprietary speech codecs. Moreover, Speex is well-adapted to Internet applications and provides useful features that are not present in most other codecs. Finally, Speex is part of the GNU Project and is available under the revised BSD license.


WavPack is a completely open audio compression format providing lossless, high-quality lossy, and a unique hybrid compression mode. Although the technology is loosely based on previous versions of WavPack, the new version 4 format has been designed from the ground up to offer unparalleled performance and functionality.

In the default lossless mode WavPack acts just like a WinZip compressor for audio files. However, unlike MP3 or WMA encoding which can affect the sound quality, not a single bit of the original information is lost, so there's no chance of degradation. This makes lossless mode ideal for archiving audio material or any other situation where quality is paramount. The compression ratio depends on the source material, but generally is between 30% and 70%.

The hybrid mode provides all the advantages of lossless compression with an additional bonus. Instead of creating a single file, this mode creates both a relatively small, high-quality lossy file that can be used all by itself, and a "correction" file that (when combined with the lossy file) provides full lossless restoration. For some users this means never having to choose between lossless and lossy compression!


Musepack or MPC is an open source lossy audio codec, specifically optimized for transparent compression of stereo audio at bitrates of 160–180 (manual set allows bitrates up to 320) kbit/s. It was formerly known as MPEGplus, MPEG+ or MP+.

Development of MPC was initiated in 1997 by Andree Buschmann and later taken over by Frank Klemm, and is currently maintained by the Musepack Development Team (MDT) with assistance from Frank Klemm and Andree Buschmann. Encoders and decoders are available for Microsoft Windows, Linux and Mac OS X, along with plugins for several third-party media players available from the Musepack website, licensed under the LGPL or BSD licenses, and an extensive list of programs supporting the format.


The Matroska Multimedia Container is an open standard free Container format, a file format that can hold an unlimited number of video, audio, picture or subtitle tracks inside a single file. It is intended to serve as a universal format for storing common multimedia content, like movies or TV shows. Matroska is similar in conception to other containers like AVI, MP4 or ASF, but is completely open source. Matroska file types are .MKV for video (and audio) and .MKA for audio-only files.


Synchronized Multimedia Integration Language
SMIL, the Synchronized Multimedia Integration Language, is a W3C recommended XML markup language for describing multimedia presentations. It defines markup for timing, layout, animations, visual transitions, and media embedding, among other things. SMIL allows the presentation of media items such as text, images, video, and audio, as well as links to other SMIL presentations, and files from multiple web servers. SMIL markup is written in XML, and has similarities to HTML.

Free/Open-source Optical Disk Authoring Software

Thursday, April 10, 2008

Optical disc authoring software, most commonly known as CD/DVD burning application is computer software for authoring optical discs such as CD-ROMs and DVDs. An optical disc recorder is necessary to use such software.

Creating an optical disc typically involves first making an optical disc image with a full file system designed for the optical disc, and then actually burning the image to the disc. Many programs create the disk image and burn in one bundled application, such that end-users do not even know the distinction.

Though most Linux distributions have cdrtools (standard open source optical disc authoring software) installed, there are other excellent and easy-to-use CD/DVD burning programs that are available for Linux.

Here are some of the finest free/open-source optical disk authoring software:

Brasero
Brasero is a free disc-burning program for Unix-like systems, which serves as a graphical front-end (using GTK+) to cdrtools, growisofs, and (optionally) libburn. One of the lead developers, Luis Medinas, is a contributor for other projects such as Muine (audio player) and Beagle (search tool), both written in C# using Mono. He is a Gentoo Developer involved in the Gentoo Gnome Team, and maintains miscellaneous applications for the GNOME project.[1] The software itself has been reviewed in a few places.


AcetoneISO
AcetoneISO is a disk image manipulator for GNU/Linux.

It is a feature-rich and complete software application to manage CD/DVD images. For example it can Mount typical proprietary images formats of the Windows world and do plenty of other things.

It uses common open source tools to achieve its goals such as FUSEISO.


Bashburn
Bashburn is no more than a Terminal User Interface (TUI) frontend based of the CD burning shell script called BashBurn for Linux; this originally does not have the best eye-candy CD-burning UI, nevertheless, MyBashBurn uses dialog boxes/functions which draws (using ncurses) windows onto the screen. MyBashBurn dialog boxes offer good functionality, and has very good capabilities of automatically finding dependencies and auto detecting devices CD/DVD RW. In short, do not reinvent the wheel - just let MyBashBurn do what you want it to do.

MyBashBurn can burn data Cd's, music Cd's, multisession Cd's. It can burn and create ISO files. It can burn bin/cue files, create mp3s, oggs and flac files. Supports burning DVD-images and data DVDs, and other funny options. Also makes use of advanced and extensive regular expressions for the control of the capabilities of backend applications to burn and create audio files. MyBashBurn depends on cdrecord and other backend applications, so basically if your writing device works with it, MyBashBurn will work flawlessly.

cdrdao
cdrdao records audio or data CD-Rs in Disk-At-Once mode based on a textual description of the CD contents. The cdrdao program runs from the command line and has no graphical user interface, except for third-party ones such as K3b (Linux) or XDuplicator (windows).

cdrdao is cross-platform software and is reported to work on FreeBSD, IRIX, Linux, Solaris, HP-UX, Microsoft Windows, OS/2, UnixWare, and Mac OS X.

Exact Audio Copy, an advanced CD-ripping software package, relies upon CDRDAO code in order to provide CD-burning functionality.


GnomeBaker
GnomeBaker is part of the GNOME desktop environment.

The GnomeBaker offers many features for authoring CDs that surpass the basic Nautilus CD/DVD burning capabilities. Among these are the possibility to create an audio cd from existing sound files and other useful things.

An overview of available functions is given here:
* Create data CDs.
* Blank RW disks.
* Burn DVDs.
* Copy data CDs.
* Copy audio CDs.
* Support multisession burning.
* Record to and burn from existing CD ISO images.
* Can burn via SCSI and ATAPI on Linux kernels 2.4 and 2.6. Basically if cdrecord works, then GnomeBaker will work.
* Drag and drop to create data CDs (including drag and drop to/from the Nautilus file manager).
* Create audio CDs from existing WAV, MP3, FLAC, and Ogg files.
* Integrate with GConf for storage of application settings.


Graveman
Graveman is a free software CD burning tool for Linux. It is technically a GTK+ front-end for cdrecord, mkisofs, readcd, sox, flac, dvd+rw-format, dvd+rw-tools and cdrdao.

Currently, Graveman supports the following:
* creating audio CDs
* creating data CDs and DVDs
* recording to and from ISO images
* CD copying
* erasing rewritable CDs and DVDs
* burning multisession CDs


K3b
K3b (from KDE Burn Baby Burn) is a CD and DVD authoring application for the KDE desktop for Unix-like computer operating systems. It provides a graphical user interface to perform most CD/DVD burning tasks like creating an Audio CD from a set of audio files or copying a CD/DVD, as well as more advanced tasks such as burning eMoviX CD/DVDs. It can also perform direct disc-to-disc copies. The program has many default settings which can be customized by more experienced users. The actual disc recording in K3b is done by the command line utilities cdrecord or wodim, cdrdao, and growisofs. As of version 1.0, K3b features a built-in DVD ripper.

K3b was voted LinuxQuestions.org's Multimedia Utility of the Year (2006) by the majority (70%) of voters.

As is the case with most KDE applications, K3b is written in the C++ programming language and uses the Qt GUI toolkit. Released under the GNU General Public License, k3b is free software.


Free/Open-source Television Software

Tuesday, April 8, 2008

Watching live or recorded TV feeds using a desktop computer is made possible using television software. Most TV software applications nowadays are integrated into media center programs with playback support for almost all kinds of media contents such as audio, video, image files and even RSS feeds.

To those who are using Linux and are looking for some television software, then you are in luck because there are plenty to choose from. Here is a list of some of the best free/open-source television software that you may want to try out:



Freevo

Freevo is a full-featured personal video recorder application for Linux, BSD, and Mac OS X similar to MythTV. It allows easy playback of videos, DVDs, pictures, music, and watching live TV. It also allows scheduling a TV program for recording with a TV tuner, and backup of DVDs.

The Freevo front-end is programmed in Python, and uses 3rd party applications for many of its functions. MPlayer or Xine are used to handle the multimedia playback. Freevo is intended to be used in home theater PCs and media centers, and is designed to be easy to operate with just a remote control. Freevo is used by the GeeXboX project.