offset
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 131
Tie::OffsetArray 0.01
Tie::OffsetArray can tie one array to another, with index offset. more>>
Tie::OffsetArray can tie one array to another, with index offset.
SYNOPSIS
use Tie::OffsetArray;
tie @a, Tie::OffsetArray, 1, @b; # offset=1; use given array.
tie @c, Tie::OffsetArray, 2; # use anonymous array.
$a[0] = x; # assign to $b[1];
tied(@a)->array->[0] = y; # assign to $b[0].
When tied to this class, an arrays behavior is completely normal. For its internal storage, it uses another array, either one supplied by the caller, or a new anonymous one. Accesses to the tied array are mapped down to the storage array by offsetting the index by some constant amount.
A special method on the tied object returns a reference to the storage array, so that the elements below the offset can be accessed. This is particularly useful if the storage array was not supplied by the caller.
<<lessSYNOPSIS
use Tie::OffsetArray;
tie @a, Tie::OffsetArray, 1, @b; # offset=1; use given array.
tie @c, Tie::OffsetArray, 2; # use anonymous array.
$a[0] = x; # assign to $b[1];
tied(@a)->array->[0] = y; # assign to $b[0].
When tied to this class, an arrays behavior is completely normal. For its internal storage, it uses another array, either one supplied by the caller, or a new anonymous one. Accesses to the tied array are mapped down to the storage array by offsetting the index by some constant amount.
A special method on the tied object returns a reference to the storage array, so that the elements below the offset can be accessed. This is particularly useful if the storage array was not supplied by the caller.
Download (0.008MB)
Added: 2007-08-10 License: Perl Artistic License Price:
805 downloads
SmileTAG 2.3
SmileTAG is a shoutbox written in PHP. more>>
SmileTAG is a shoutbox written in PHP. It has a powerful template system; its easy-to-modify templates using only simple tags, and no programming skill is needed.
Smart auto-refresh automatically refreshes whenever a new message is posted. No database is needed.
SmileTAG includes profanity filters, flood guard, IP address/nick banning, customizable smilies, time zone control, multi-language support, email/URL recognition, a custom CSS file, and a lot more.
Main features:
- Powerful template system, easy-to-modify templates using only simple tags, no programming skills required.
- Smart auto-refresh, automagically refreshes whenever new message is posted.
- No database is needed, uses flat file (XML) for storage.
- Profanity filters, easily add your own custom words to filter as well.
- Flood guard, stop spammer from flooding your board.
- IP Address/Nick banning, support for both manual and automatic banning.
- Customizable smilies, you can add your own images as many as you want.
- Time Zone Control, sets the time zone to any GMT offset.
- Multi-language support.
- Email/URL recognition, automatically convert any email or url into link.
- Custom CSS File, you have complete control for your board look and feel.
- Alternate custom text, more than just alternating background color, you can alternate any text to switch for each row.
- Filters HTML tags and blank messages.
- Message formatting, allow bold, italic and underline.
- Custom Header and Footer, put any text at the top and bottom of your board.
- Timestamp, easily change the format using simple rule.
- Logs visitor IP Address.
- Auto rotate each message, in order to avoid a large file from staying on your server.
- Configurable number of messages to display.
- Configurable message length.
Enhancements:
- An admin panel has been added.
- Message moderation has been added.
- This release is valid XHTML 1.0 Transitional.
<<lessSmart auto-refresh automatically refreshes whenever a new message is posted. No database is needed.
SmileTAG includes profanity filters, flood guard, IP address/nick banning, customizable smilies, time zone control, multi-language support, email/URL recognition, a custom CSS file, and a lot more.
Main features:
- Powerful template system, easy-to-modify templates using only simple tags, no programming skills required.
- Smart auto-refresh, automagically refreshes whenever new message is posted.
- No database is needed, uses flat file (XML) for storage.
- Profanity filters, easily add your own custom words to filter as well.
- Flood guard, stop spammer from flooding your board.
- IP Address/Nick banning, support for both manual and automatic banning.
- Customizable smilies, you can add your own images as many as you want.
- Time Zone Control, sets the time zone to any GMT offset.
- Multi-language support.
- Email/URL recognition, automatically convert any email or url into link.
- Custom CSS File, you have complete control for your board look and feel.
- Alternate custom text, more than just alternating background color, you can alternate any text to switch for each row.
- Filters HTML tags and blank messages.
- Message formatting, allow bold, italic and underline.
- Custom Header and Footer, put any text at the top and bottom of your board.
- Timestamp, easily change the format using simple rule.
- Logs visitor IP Address.
- Auto rotate each message, in order to avoid a large file from staying on your server.
- Configurable number of messages to display.
- Configurable message length.
Enhancements:
- An admin panel has been added.
- Message moderation has been added.
- This release is valid XHTML 1.0 Transitional.
Download (0.070MB)
Added: 2006-01-02 License: GPL (GNU General Public License) Price:
1423 downloads
PicoStorage 0.1
PicoStorage is a lightweight structured storage software. more>>
PicoStorage allows you to store hierarhical information (similar to "files and directories") inside a single file. The functionality offered is largely equivalent to the one offered by any filesystem, or by the Structured Storage and Compound Files.
PicoStorage can efficiently handle huge numbers of small files, with very economical disk usage; it also allows you to keep open (in RAM) simultaneously a large number of files. Transaction support guarantees data integrity.
Learn more about the distinctive advantages of PicoStorage. or look at the benchmark.
The library is available on a dual-license basis: under GPL for free, and under a commercial license for use in closed-source applications.
Using
The library contains the classes File and Dir to represent files and directories. On a File you can read or write a number of bytes from a given offset, and set/get the file size. On a Dir you can create entries (either files or subdirectories), open entries, delete entries, and iterate over the directorys content.
The storage itself (i.e. the whole hierarchical structure, contained in a filesystem file) is represented by the class Storage. Using this class, you can create or open a storage, obtain the root directory of the storage, close the storage and do commit or rollback.
<<lessPicoStorage can efficiently handle huge numbers of small files, with very economical disk usage; it also allows you to keep open (in RAM) simultaneously a large number of files. Transaction support guarantees data integrity.
Learn more about the distinctive advantages of PicoStorage. or look at the benchmark.
The library is available on a dual-license basis: under GPL for free, and under a commercial license for use in closed-source applications.
Using
The library contains the classes File and Dir to represent files and directories. On a File you can read or write a number of bytes from a given offset, and set/get the file size. On a Dir you can create entries (either files or subdirectories), open entries, delete entries, and iterate over the directorys content.
The storage itself (i.e. the whole hierarchical structure, contained in a filesystem file) is represented by the class Storage. Using this class, you can create or open a storage, obtain the root directory of the storage, close the storage and do commit or rollback.
Download (0.13MB)
Added: 2005-04-13 License: GPL (GNU General Public License) Price:
1655 downloads
OTP 1.61
OTP is an encryption program that uses the one-time pad algorithm to allow two parties to communicate securely. more>>
OTP is an encryption program that uses the one-time pad algorithm to allow two parties to communicate securely, without worrying about unauthorized people listening in. OTP compresses plaintext input to save pad, has features that assist with the bureaucracy of pad management, and comes with built-in help. OTP project is written in the Python programming language and requires a Python interpreter to run.
To use OTP reliably, you need a source of good random data. On modern Unix systems, the /dev/random device is probably good enough (I havent done the math myself, Im just taking other peoples word for it). On non-Unix systems, youre on your own. Whatever your source of random data, store the data in a file (thats the "pad") and point to it using OTPs -p option when you encrypt; the recipient must use the same pad to decrypt, of course.
Note that the one-time pad method depends completely on the quality of the pad data; if the pad is not truly random, the security of your messages cannot be guaranteed. Never encrypt different plaintexts with the same stretch of pad — doing so could reveal some or all of the used pad to eavesdroppers. OTPs default behavior is to always avoid reusing pad data, unless you explicitly tell it otherwise.
And here is the output of otp --help:
OTP version 1.61, an encoder/decoder for one-time pads. Standard usage:
otp -e -p PAD INPUT (encrypt, write output to INPUT.otp)
otp -d -p PAD INPUT.otp (decrypt, strip .otp suffix on output)
Other usage modes:
otp [-e|-d] -p PAD INPUT -o OUTPUT (both INPUT and OUTPUT are files)
otp [-e|-d] -p PAD INPUT -o - (output goes to stdout)
otp [-e|-d] -p PAD (input from stdin, output to stdout)
otp [-e|-d] -p PAD -o OUTPUT (input from stdin, output to OUTPUT)
OTP remembers what ranges of what pad files have been used, and avoids re-using those ranges when encoding. Because OTP compresses plaintext input to save pad, encoding and decoding are not symmetrical; thus, OTP needs to be told whether it is encoding or decoding (-e or -d).
All options:
-e Encrypt
-d Decrypt
-p PAD | --pad=PAD Use PAD for pad data.
-o OUT | --output=OUT Output to file OUT ("-" for stdout)
--offset=N Control the pad data start offset
-n | --no-trace Leave no record of pad usage in your config
--no-vc Ignore SVN/CVS control of the config area
-C DIR | --config=DIR Specify DIR (instead of ~/.otp) as the config area
--intro Show an introduction to OTP and one-time pads
-v | -V | --version Show version information
-? | -h | --help Show usage
<<lessTo use OTP reliably, you need a source of good random data. On modern Unix systems, the /dev/random device is probably good enough (I havent done the math myself, Im just taking other peoples word for it). On non-Unix systems, youre on your own. Whatever your source of random data, store the data in a file (thats the "pad") and point to it using OTPs -p option when you encrypt; the recipient must use the same pad to decrypt, of course.
Note that the one-time pad method depends completely on the quality of the pad data; if the pad is not truly random, the security of your messages cannot be guaranteed. Never encrypt different plaintexts with the same stretch of pad — doing so could reveal some or all of the used pad to eavesdroppers. OTPs default behavior is to always avoid reusing pad data, unless you explicitly tell it otherwise.
And here is the output of otp --help:
OTP version 1.61, an encoder/decoder for one-time pads. Standard usage:
otp -e -p PAD INPUT (encrypt, write output to INPUT.otp)
otp -d -p PAD INPUT.otp (decrypt, strip .otp suffix on output)
Other usage modes:
otp [-e|-d] -p PAD INPUT -o OUTPUT (both INPUT and OUTPUT are files)
otp [-e|-d] -p PAD INPUT -o - (output goes to stdout)
otp [-e|-d] -p PAD (input from stdin, output to stdout)
otp [-e|-d] -p PAD -o OUTPUT (input from stdin, output to OUTPUT)
OTP remembers what ranges of what pad files have been used, and avoids re-using those ranges when encoding. Because OTP compresses plaintext input to save pad, encoding and decoding are not symmetrical; thus, OTP needs to be told whether it is encoding or decoding (-e or -d).
All options:
-e Encrypt
-d Decrypt
-p PAD | --pad=PAD Use PAD for pad data.
-o OUT | --output=OUT Output to file OUT ("-" for stdout)
--offset=N Control the pad data start offset
-n | --no-trace Leave no record of pad usage in your config
--no-vc Ignore SVN/CVS control of the config area
-C DIR | --config=DIR Specify DIR (instead of ~/.otp) as the config area
--intro Show an introduction to OTP and one-time pads
-v | -V | --version Show version information
-? | -h | --help Show usage
Download (0.025MB)
Added: 2006-06-02 License: Public Domain Price:
1247 downloads
convert2tifgrayscale
convert2tifgrayscale is a GIMP plugin that can batch convert to tif grayscale for Offset-Printing. more>>
convert2tifgrayscale is a GIMP plugin that can batch convert to tif grayscale for Offset-Printing.
Converts all images in a specified directory to grayscale, then uses unsharp mask and adjusts levels.
<<lessConverts all images in a specified directory to grayscale, then uses unsharp mask and adjusts levels.
Download (MB)
Added: 2006-08-16 License: GPL (GNU General Public License) Price:
1167 downloads
GSubEdit 0.4pre1
GSubEdit, or GNOME Subtitle Editor, is a tool for editing and converting DivX ;-) subtitles. more>>
GSubEdit, or GNOME Subtitle Editor, is a tool for editing and converting DivX ;-) subtitles. It currently features read/write of SubRip (.srt) and MicroDVD (.sub) subtitles.
Framerate conversion and frame displacement (Increase/decrease all frames by a given offset) is also supported.
Main features:
- Open and saving of SubRip (.srt) and MicroDVD (.sub)
- Framerate conversion (.sub and .srt)
- Frame displacement. Used if the frames is shown to early or to late. (.sub and .srt)
- Removing of the text used for hearing impaired. (.sub and .srt)
- Split file into two parts
- Join two files into one
- Editing of text, start- and end- frame/time (.sub and .srt)
- DragnDrop, search and replace and support for i18n (only Swedish is currently available)
- Spellcheck
<<lessFramerate conversion and frame displacement (Increase/decrease all frames by a given offset) is also supported.
Main features:
- Open and saving of SubRip (.srt) and MicroDVD (.sub)
- Framerate conversion (.sub and .srt)
- Frame displacement. Used if the frames is shown to early or to late. (.sub and .srt)
- Removing of the text used for hearing impaired. (.sub and .srt)
- Split file into two parts
- Join two files into one
- Editing of text, start- and end- frame/time (.sub and .srt)
- DragnDrop, search and replace and support for i18n (only Swedish is currently available)
- Spellcheck
Download (0.078MB)
Added: 2005-08-17 License: GPL (GNU General Public License) Price:
1533 downloads
DBIx::FetchLoop 0.6
DBIx::FetchLoop is a Perl module that can fetch with change detection and aggregates. more>>
DBIx::FetchLoop is a Perl module that can fetch with change detection and aggregates.
SYNOPSIS
use DBIx::FetchLoop;
$lph = DBIx::FetchLoop->new($sth, $dbi_method);
$hash_ref = $lph->fetch_current_data;
$rowset = $hash_ref->{previous};
$rowset = $hash_ref->{current};
$rowset = $hash_ref->{next};
$rowset = $lph->fetch_current_row;
$rowset = $lph->previous;
$rowset = $lph->current;
$rowset = $lph->next;
$lph->set_aggregate($new_field, $field);
$lph->reset_aggregate($new_field);
$lph->set_concatenate($new_field, $field);
$lph->reset_concatenate($new_field);
$boolean = $lph->pre_loop($field);
$boolean = $lph->post_loop($field);
$boolean = $lph->pre_loop_substr($field,$offset,$length);
$boolean = $lph->post_loop_substr($field,$offset,$length);
$boolean = $lph->is_first;
$boolean = $lph->is_last;
$count = $lph->count;
DBIx::FetchLoop is a supplemental approach for data retrieval with DBI. Result rows are queued with hash references to previous, current and next rows. Utility functions allow for simplified comparison of a field between previous and current or current and next rows. Additional functions allow you automatically create new fields for aggregating or concatenating based on fields in the resulting dataset.
Note: This module was created with ease of use and performance in mind. This module is intended to eliminate the need for temporary variables for loop detection as well as aggregation and concatenation. The reason that not all DBI methods for data retrieval are not implemented (such as selectall_arrayref) is that the modules design for performance would be defeated.
In essence you can write cleaner looking, more efficient code minus a few hassles.
<<lessSYNOPSIS
use DBIx::FetchLoop;
$lph = DBIx::FetchLoop->new($sth, $dbi_method);
$hash_ref = $lph->fetch_current_data;
$rowset = $hash_ref->{previous};
$rowset = $hash_ref->{current};
$rowset = $hash_ref->{next};
$rowset = $lph->fetch_current_row;
$rowset = $lph->previous;
$rowset = $lph->current;
$rowset = $lph->next;
$lph->set_aggregate($new_field, $field);
$lph->reset_aggregate($new_field);
$lph->set_concatenate($new_field, $field);
$lph->reset_concatenate($new_field);
$boolean = $lph->pre_loop($field);
$boolean = $lph->post_loop($field);
$boolean = $lph->pre_loop_substr($field,$offset,$length);
$boolean = $lph->post_loop_substr($field,$offset,$length);
$boolean = $lph->is_first;
$boolean = $lph->is_last;
$count = $lph->count;
DBIx::FetchLoop is a supplemental approach for data retrieval with DBI. Result rows are queued with hash references to previous, current and next rows. Utility functions allow for simplified comparison of a field between previous and current or current and next rows. Additional functions allow you automatically create new fields for aggregating or concatenating based on fields in the resulting dataset.
Note: This module was created with ease of use and performance in mind. This module is intended to eliminate the need for temporary variables for loop detection as well as aggregation and concatenation. The reason that not all DBI methods for data retrieval are not implemented (such as selectall_arrayref) is that the modules design for performance would be defeated.
In essence you can write cleaner looking, more efficient code minus a few hassles.
Download (0.006MB)
Added: 2006-12-21 License: Perl Artistic License Price:
1037 downloads
libebt 1.3.0
libebt library provides a clean way of getting human-readable backtrace messages in C++. more>>
libebt library provides a clean way of getting human-readable backtrace messages in C++.
libebt uses the RAII (resource acquisition is initialisation) idiom to manage backtrace stack items without needing macros, control structures or an external debugger adding context to a function or block is done through a single simple variable declaration.
A typical application using libebt will produce errors along the lines of the following:
Caught exception:
- When performing query app-editors/vim from commandline:
-> When calculating dependencies for app-editors/vim:
-> When calculating dependencies for app-editors/vim-core:
-> When loading versions for gentoo::app-editors/vim-core:
-> When parsing version string 6.4_invalid_version_suffix:
Version error: 6.4_invalid_version_suffix is invalid (unknown format at around character offset 3)
This is far more useful for both end users and developers than a simple context-free error message, and does not require the use of a debugger to generate the backtrace.
Usage:
Heres a simple preprocessor. It takes the name of a file and copies each non-directive line to stdout. If a line starts with #e , it generates an error message from the rest of the line. If a line starts with #i , it includes the filename specified on the remainder of the line. Any other line starting with a # is an invalid directive.
Point to note:
- To avoid confusion with multiple libraries making use of libebt, a tag is used to keep track of the context.
- Rather than defining a specific exception class, libebt provides a libebt::Backtracable template class which can be used in conjunction with other exception heirarchies through multiple inheritance.
- Declaring context for a given block or function is as simple as declaring a variable.
- To avoid typing out libebt::Backtracable in several places, a typedef is used.
Enhancements:
- A std::deque is now used internally rather than a std::list to cut down on the number of memory allocations.
<<lesslibebt uses the RAII (resource acquisition is initialisation) idiom to manage backtrace stack items without needing macros, control structures or an external debugger adding context to a function or block is done through a single simple variable declaration.
A typical application using libebt will produce errors along the lines of the following:
Caught exception:
- When performing query app-editors/vim from commandline:
-> When calculating dependencies for app-editors/vim:
-> When calculating dependencies for app-editors/vim-core:
-> When loading versions for gentoo::app-editors/vim-core:
-> When parsing version string 6.4_invalid_version_suffix:
Version error: 6.4_invalid_version_suffix is invalid (unknown format at around character offset 3)
This is far more useful for both end users and developers than a simple context-free error message, and does not require the use of a debugger to generate the backtrace.
Usage:
Heres a simple preprocessor. It takes the name of a file and copies each non-directive line to stdout. If a line starts with #e , it generates an error message from the rest of the line. If a line starts with #i , it includes the filename specified on the remainder of the line. Any other line starting with a # is an invalid directive.
Point to note:
- To avoid confusion with multiple libraries making use of libebt, a tag is used to keep track of the context.
- Rather than defining a specific exception class, libebt provides a libebt::Backtracable template class which can be used in conjunction with other exception heirarchies through multiple inheritance.
- Declaring context for a given block or function is as simple as declaring a variable.
- To avoid typing out libebt::Backtracable in several places, a typedef is used.
Enhancements:
- A std::deque is now used internally rather than a std::list to cut down on the number of memory allocations.
Download (0.13MB)
Added: 2006-01-26 License: BSD License Price:
1366 downloads
Unicode Utilities 2.25
Unicode Utilities project are a set of programs for manipulating and analyzing Unicode text. more>>
Unicode Utilities project are a set of programs for manipulating and analyzing Unicode text. uniname defaults to printing the character offset of each character, its byte offset, its hex code value, its encoding, the glyph itself, and its name. Command line options allow undesired information to be suppressed and the Unicode range to be added.
unidesc reports the character ranges to which different portions of the text belong. unihist generates a histogram of the characters in its input. ExplicateUTF8 is intended for debugging or for learning about Unicode. It determines and explains the validity of a sequence of bytes as a UTF-8 encoding. unirev reverses UTF-8 strings.
Enhancements:
- Adds to unidesc the option -r which causes it to list the ranges detected after reading all input rather than listing them as they are encountered, and adds to uniname the option -B which causes it to ignore characters within the Basic Multilingual Plane.
<<lessunidesc reports the character ranges to which different portions of the text belong. unihist generates a histogram of the characters in its input. ExplicateUTF8 is intended for debugging or for learning about Unicode. It determines and explains the validity of a sequence of bytes as a UTF-8 encoding. unirev reverses UTF-8 strings.
Enhancements:
- Adds to unidesc the option -r which causes it to list the ranges detected after reading all input rather than listing them as they are encountered, and adds to uniname the option -B which causes it to ignore characters within the Basic Multilingual Plane.
Download (0.25MB)
Added: 2007-07-04 License: GPL (GNU General Public License) Price:
849 downloads
stabilize 0.1
stabilize is a tool for stabilizing shaking movies. more>>
stabilize is a tool for stabilizing shaking movies.
Sometimes videos are recorded with a free hand, which produces shaky movies.
This program compares each frame with previous frames and tries to find out to which offset it should shift that frame to make the movie more stable.
Usage
Compile it:
$ g++ -o stabilize stabilize.cpp -Llib -lavformat -lavcodec -lz -I/usr/include/ffmpeg/
Run it:
$ ./stabilize test.avi | ffmpeg -f imagepipe -img pnm -i - -sameq output.avi
<<lessSometimes videos are recorded with a free hand, which produces shaky movies.
This program compares each frame with previous frames and tries to find out to which offset it should shift that frame to make the movie more stable.
Usage
Compile it:
$ g++ -o stabilize stabilize.cpp -Llib -lavformat -lavcodec -lz -I/usr/include/ffmpeg/
Run it:
$ ./stabilize test.avi | ffmpeg -f imagepipe -img pnm -i - -sameq output.avi
Download (8.3MB)
Added: 2006-09-04 License: GPL (GNU General Public License) Price:
1149 downloads
Audio::FindChunks 0.03
Audio::FindChunks can breaks audio files into sound/silence parts. more>>
Audio::FindChunks can breaks audio files into sound/silence parts.
SYNOPSIS
use Audio::FindChunks;
# Duplicate input to output, caching RMS values to a file (as a side effect)
Audio::FindChunks->new(rms_filename => x.rms, filter => 1)->get(rms_data);
# Output human-readable info, using RMS cache file xxx.rms if present:
Audio::FindChunks->new(cache_rms => 1, filename => xxx.mp3,
stem_strip_extension => 1)->output_blocks();
# Remove start/end silence (if longer than 0.2sec):
Audio::FindChunks->new(cache_rms => 1, filename => xxx.mp3,
min_actual_silence_sec => 1e100)->split_file();
# Split a multiple-sides tape recording
Audio::FindChunks->new(filename => xxx.mp3, min_actual_silence_sec => 11
)->split_file({verbose => 1});
Audio sequence is broken into parts which contain only noise ("gaps"), and parts with usable signal ("tracks").
The following configuration settings (and defaults) are supported:
# For getting PCM flow (and if averaging data is read from cache)
frequency => 44100, # If raw_pcm or override_header_info only
bytes_per_sample => 4, # likewise
channels => 2, # likewise
sizedata => MY_INF, # likewise (how many bytes of PCM to read)
out_fh => *STDOUT, # mirror WAV/PCM to this FH if filter
# Process non-WAV data:
preprocess => {mp3 => [[qw(lame --silent --decode)], [], [-]]}, # Second contains extra args to read stdin
# RMS cache (used if valid_rms)
rms_extension => .rms, # Appended to the filestem
# Averaging to RMS info
sec_per_chunk => 0.1, # The window for taking mean square
# thresholds picking from the list of sorted 3-medians of RMS data
threshold_in_sorted_min_rel => 0, # relative position of threashold_min
threshold_in_sorted_min_sec => 1, # shifted by this amount in the list
threshold_factor_min => 1, # the list elt is multiplied by this
threshold_in_sorted_max_rel => 0.5, # likewise
threshold_in_sorted_max_sec => 0, # likewise
threshold_factor_max => 1, # likewise
threshold_ratio => 0.15, # relative position between min/max
# Chunkification: smoothification
above_thres_window => 11, # in units of chunks
above_thres_window_rel => 0.25, # fractions of chunks above threshold
# in a window to make chunk signal
# Splitting into runs of signal/noise
max_tracks => 9999, # fail if more signal/noise runs
min_signal_sec => 5, # such runs of signal are forced
min_silence_sec => 2, # likewise
ignore_signal_sec => 1, # short runs of signal are ignored
min_silence_chunks_merge (see below) # and long resulting runs of silence
# are forced
# Calculate average signal in an interval "deeply inside" silence runs
local_level_ignore_pre_sec => 0.3, # offset the start of this interval
local_level_ignore_pre_rel => 0.02, # additional relative offset
local_level_ignore_post_sec => 0.3, # likewise for end of the interval
local_level_ignore_post_rel => 0.02, # likewise
# Enlargement of signal runs: attach consequent chunks with signal this much
# above this average over the neighbour silence run
local_threshold_factor => 1.05,
# Final enlargement of runs of signal
extend_track_end_sec => 0.5, # Unconditional enlargement
extend_track_begin_sec => 0.3, # likewise
min_boundary_silence_sec => 0.2, # Ignore short silence at start/end
Note that above_thres_window is the only value specified directly in units of chunks; the other *_sec may be optionally specified in units of chunks by setting the corresponding *_chunks value. Note also that this window should better be decreased if minimal allowed silence length parameters are decreased.
These values are mirrored from other values if not explicitly specified:
min_actual_silence_sec<<less
SYNOPSIS
use Audio::FindChunks;
# Duplicate input to output, caching RMS values to a file (as a side effect)
Audio::FindChunks->new(rms_filename => x.rms, filter => 1)->get(rms_data);
# Output human-readable info, using RMS cache file xxx.rms if present:
Audio::FindChunks->new(cache_rms => 1, filename => xxx.mp3,
stem_strip_extension => 1)->output_blocks();
# Remove start/end silence (if longer than 0.2sec):
Audio::FindChunks->new(cache_rms => 1, filename => xxx.mp3,
min_actual_silence_sec => 1e100)->split_file();
# Split a multiple-sides tape recording
Audio::FindChunks->new(filename => xxx.mp3, min_actual_silence_sec => 11
)->split_file({verbose => 1});
Audio sequence is broken into parts which contain only noise ("gaps"), and parts with usable signal ("tracks").
The following configuration settings (and defaults) are supported:
# For getting PCM flow (and if averaging data is read from cache)
frequency => 44100, # If raw_pcm or override_header_info only
bytes_per_sample => 4, # likewise
channels => 2, # likewise
sizedata => MY_INF, # likewise (how many bytes of PCM to read)
out_fh => *STDOUT, # mirror WAV/PCM to this FH if filter
# Process non-WAV data:
preprocess => {mp3 => [[qw(lame --silent --decode)], [], [-]]}, # Second contains extra args to read stdin
# RMS cache (used if valid_rms)
rms_extension => .rms, # Appended to the filestem
# Averaging to RMS info
sec_per_chunk => 0.1, # The window for taking mean square
# thresholds picking from the list of sorted 3-medians of RMS data
threshold_in_sorted_min_rel => 0, # relative position of threashold_min
threshold_in_sorted_min_sec => 1, # shifted by this amount in the list
threshold_factor_min => 1, # the list elt is multiplied by this
threshold_in_sorted_max_rel => 0.5, # likewise
threshold_in_sorted_max_sec => 0, # likewise
threshold_factor_max => 1, # likewise
threshold_ratio => 0.15, # relative position between min/max
# Chunkification: smoothification
above_thres_window => 11, # in units of chunks
above_thres_window_rel => 0.25, # fractions of chunks above threshold
# in a window to make chunk signal
# Splitting into runs of signal/noise
max_tracks => 9999, # fail if more signal/noise runs
min_signal_sec => 5, # such runs of signal are forced
min_silence_sec => 2, # likewise
ignore_signal_sec => 1, # short runs of signal are ignored
min_silence_chunks_merge (see below) # and long resulting runs of silence
# are forced
# Calculate average signal in an interval "deeply inside" silence runs
local_level_ignore_pre_sec => 0.3, # offset the start of this interval
local_level_ignore_pre_rel => 0.02, # additional relative offset
local_level_ignore_post_sec => 0.3, # likewise for end of the interval
local_level_ignore_post_rel => 0.02, # likewise
# Enlargement of signal runs: attach consequent chunks with signal this much
# above this average over the neighbour silence run
local_threshold_factor => 1.05,
# Final enlargement of runs of signal
extend_track_end_sec => 0.5, # Unconditional enlargement
extend_track_begin_sec => 0.3, # likewise
min_boundary_silence_sec => 0.2, # Ignore short silence at start/end
Note that above_thres_window is the only value specified directly in units of chunks; the other *_sec may be optionally specified in units of chunks by setting the corresponding *_chunks value. Note also that this window should better be decreased if minimal allowed silence length parameters are decreased.
These values are mirrored from other values if not explicitly specified:
min_actual_silence_sec<<less
Download (0.024MB)
Added: 2006-06-19 License: Perl Artistic License Price:
1222 downloads
DB_File 1.815
DB_File is a Perl5 access to Berkeley DB version 1.x. more>>
DB_File is a Perl5 access to Berkeley DB version 1.x.
SYNOPSIS
use DB_File;
[$X =] tie %hash, DB_File, [$filename, $flags, $mode, $DB_HASH] ;
[$X =] tie %hash, DB_File, $filename, $flags, $mode, $DB_BTREE ;
[$X =] tie @array, DB_File, $filename, $flags, $mode, $DB_RECNO ;
$status = $X->del($key [, $flags]) ;
$status = $X->put($key, $value [, $flags]) ;
$status = $X->get($key, $value [, $flags]) ;
$status = $X->seq($key, $value, $flags) ;
$status = $X->sync([$flags]) ;
$status = $X->fd ;
# BTREE only
$count = $X->get_dup($key) ;
@list = $X->get_dup($key) ;
%list = $X->get_dup($key, 1) ;
$status = $X->find_dup($key, $value) ;
$status = $X->del_dup($key, $value) ;
# RECNO only
$a = $X->length;
$a = $X->pop ;
$X->push(list);
$a = $X->shift;
$X->unshift(list);
@r = $X->splice(offset, length, elements);
# DBM Filters
$old_filter = $db->filter_store_key ( sub { ... } ) ;
$old_filter = $db->filter_store_value( sub { ... } ) ;
$old_filter = $db->filter_fetch_key ( sub { ... } ) ;
$old_filter = $db->filter_fetch_value( sub { ... } ) ;
untie %hash ;
untie @array ;
DB_File is a module which allows Perl programs to make use of the facilities provided by Berkeley DB version 1.x (if you have a newer version of DB, see "Using DB_File with Berkeley DB version 2 or greater"). It is assumed that you have a copy of the Berkeley DB manual pages at hand when reading this documentation. The interface defined here mirrors the Berkeley DB interface closely.
Berkeley DB is a C library which provides a consistent interface to a number of database formats. DB_File provides an interface to all three of the database types currently supported by Berkeley DB.
<<lessSYNOPSIS
use DB_File;
[$X =] tie %hash, DB_File, [$filename, $flags, $mode, $DB_HASH] ;
[$X =] tie %hash, DB_File, $filename, $flags, $mode, $DB_BTREE ;
[$X =] tie @array, DB_File, $filename, $flags, $mode, $DB_RECNO ;
$status = $X->del($key [, $flags]) ;
$status = $X->put($key, $value [, $flags]) ;
$status = $X->get($key, $value [, $flags]) ;
$status = $X->seq($key, $value, $flags) ;
$status = $X->sync([$flags]) ;
$status = $X->fd ;
# BTREE only
$count = $X->get_dup($key) ;
@list = $X->get_dup($key) ;
%list = $X->get_dup($key, 1) ;
$status = $X->find_dup($key, $value) ;
$status = $X->del_dup($key, $value) ;
# RECNO only
$a = $X->length;
$a = $X->pop ;
$X->push(list);
$a = $X->shift;
$X->unshift(list);
@r = $X->splice(offset, length, elements);
# DBM Filters
$old_filter = $db->filter_store_key ( sub { ... } ) ;
$old_filter = $db->filter_store_value( sub { ... } ) ;
$old_filter = $db->filter_fetch_key ( sub { ... } ) ;
$old_filter = $db->filter_fetch_value( sub { ... } ) ;
untie %hash ;
untie @array ;
DB_File is a module which allows Perl programs to make use of the facilities provided by Berkeley DB version 1.x (if you have a newer version of DB, see "Using DB_File with Berkeley DB version 2 or greater"). It is assumed that you have a copy of the Berkeley DB manual pages at hand when reading this documentation. The interface defined here mirrors the Berkeley DB interface closely.
Berkeley DB is a C library which provides a consistent interface to a number of database formats. DB_File provides an interface to all three of the database types currently supported by Berkeley DB.
Download (0.085MB)
Added: 2007-08-02 License: Perl Artistic License Price:
498 downloads
Convert::Binary::C 0.64
Convert::Binary::C is a Binary Data Conversion using C Types. more>>
Convert::Binary::C is a Binary Data Conversion using C Types.
SYNOPSIS
Simple
use Convert::Binary::C;
#---------------------------------------------
# Create a new object and parse embedded code
#---------------------------------------------
my $c = Convert::Binary::C->new->parse( DEC, day => 24 };
my $packed = $c->pack( Date, $date );
Advanced
use Convert::Binary::C;
use Data::Dumper;
#---------------------
# Create a new object
#---------------------
my $c = new Convert::Binary::C ByteOrder => BigEndian;
#---------------------------------------------------
# Add include paths and global preprocessor defines
#---------------------------------------------------
$c->Include( /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.6/include,
/usr/include )
->Define( qw( __USE_POSIX __USE_ISOC99=1 ) );
#----------------------------------
# Parse the time.h header file
#----------------------------------
$c->parse_file( time.h );
#---------------------------------------
# See which files the object depends on
#---------------------------------------
print Dumper( [$c->dependencies] );
#-----------------------------------------------------------
# See if struct timespec is defined and dump its definition
#-----------------------------------------------------------
if( $c->def( struct timespec ) ) {
print Dumper( $c->struct( timespec ) );
}
#-------------------------------
# Create some binary dummy data
#-------------------------------
my $data = "binaryteststring";
#--------------------------------------------------------
# Unpack $data according to struct timespec definition
#--------------------------------------------------------
if( length($data) >= $c->sizeof( timespec ) ) {
my $perl = $c->unpack( timespec, $data );
print Dumper( $perl );
}
#--------------------------------------------------------
# See which member lies at offset 5 of struct timespec
#--------------------------------------------------------
my $member = $c->member( timespec, 5 );
print "member( timespec, 5 ) = $membern";
Convert::Binary::C is a preprocessor and parser for C type definitions. It is highly configurable and should support arbitrarily complex data structures. Its object-oriented interface has pack and unpack methods that act as replacements for Perls pack and unpack and allow to use the C types instead of a string representation of the data structure for conversion of binary data from and to Perls complex data structures.
Actually, what Convert::Binary::C does is not very different from what a C compiler does, just that it doesnt compile the source code into an object file or executable, but only parses the code and allows Perl to use the enumerations, structs, unions and typedefs that have been defined within your C source for binary data conversion, similar to Perls pack and unpack.
Beyond that, the module offers a lot of convenience methods to retrieve information about the C types that have been parsed.
<<lessSYNOPSIS
Simple
use Convert::Binary::C;
#---------------------------------------------
# Create a new object and parse embedded code
#---------------------------------------------
my $c = Convert::Binary::C->new->parse( DEC, day => 24 };
my $packed = $c->pack( Date, $date );
Advanced
use Convert::Binary::C;
use Data::Dumper;
#---------------------
# Create a new object
#---------------------
my $c = new Convert::Binary::C ByteOrder => BigEndian;
#---------------------------------------------------
# Add include paths and global preprocessor defines
#---------------------------------------------------
$c->Include( /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.6/include,
/usr/include )
->Define( qw( __USE_POSIX __USE_ISOC99=1 ) );
#----------------------------------
# Parse the time.h header file
#----------------------------------
$c->parse_file( time.h );
#---------------------------------------
# See which files the object depends on
#---------------------------------------
print Dumper( [$c->dependencies] );
#-----------------------------------------------------------
# See if struct timespec is defined and dump its definition
#-----------------------------------------------------------
if( $c->def( struct timespec ) ) {
print Dumper( $c->struct( timespec ) );
}
#-------------------------------
# Create some binary dummy data
#-------------------------------
my $data = "binaryteststring";
#--------------------------------------------------------
# Unpack $data according to struct timespec definition
#--------------------------------------------------------
if( length($data) >= $c->sizeof( timespec ) ) {
my $perl = $c->unpack( timespec, $data );
print Dumper( $perl );
}
#--------------------------------------------------------
# See which member lies at offset 5 of struct timespec
#--------------------------------------------------------
my $member = $c->member( timespec, 5 );
print "member( timespec, 5 ) = $membern";
Convert::Binary::C is a preprocessor and parser for C type definitions. It is highly configurable and should support arbitrarily complex data structures. Its object-oriented interface has pack and unpack methods that act as replacements for Perls pack and unpack and allow to use the C types instead of a string representation of the data structure for conversion of binary data from and to Perls complex data structures.
Actually, what Convert::Binary::C does is not very different from what a C compiler does, just that it doesnt compile the source code into an object file or executable, but only parses the code and allows Perl to use the enumerations, structs, unions and typedefs that have been defined within your C source for binary data conversion, similar to Perls pack and unpack.
Beyond that, the module offers a lot of convenience methods to retrieve information about the C types that have been parsed.
Download (1.3MB)
Added: 2006-07-05 License: Perl Artistic License Price:
1208 downloads
Thirdphase 1.5
Thirdphase automatically downloads, installs, backs up, and runs any software downloadable from a static URL. more>>
Thirdphase automatically downloads, installs, backs up, and runs any software downloadable from a static URL, with a couple of other user-provided variables. The project is useful for keeping nightly builds of software up-to-date.
Usage: thirdphase [options] product_list
product:
a config file name located in ~/.thirdphase/config
options:
c - cleanup the downloads folder
d - download only (No decompression or installation)
D - Dont run the app once installed
f - force download (this option will not backup your current app)
i - set a personal install path (defaults are set in config files)
enter a empty string to return to default
I - install a config file to ~/.nightly/config/
h - help (this message)
l - list settings for a config
L - list all installed configs
p - Ignore if a products download has been marked problematic
q - quiet thirdphases output
r - revert to backup (should be used without any other options)
t - Edit the config file of the given product
R - if your sever supports resume offset downloading use this option
v - version
<<lessUsage: thirdphase [options] product_list
product:
a config file name located in ~/.thirdphase/config
options:
c - cleanup the downloads folder
d - download only (No decompression or installation)
D - Dont run the app once installed
f - force download (this option will not backup your current app)
i - set a personal install path (defaults are set in config files)
enter a empty string to return to default
I - install a config file to ~/.nightly/config/
h - help (this message)
l - list settings for a config
L - list all installed configs
p - Ignore if a products download has been marked problematic
q - quiet thirdphases output
r - revert to backup (should be used without any other options)
t - Edit the config file of the given product
R - if your sever supports resume offset downloading use this option
v - version
Download (0.020MB)
Added: 2007-06-30 License: Freeware Price:
846 downloads
SDL::MPEG 2.1.3
SDL::MPEG is a SDL perl extension. more>>
SDL::MPEG is a SDL perl extension.
SYNOPSIS
$info = new SDL::MPEG -from => $mpeg;
SDL::MPEG provides an interface to quering the status of a SMPEG stream.
METHODS
SDL::MPEG::has_audio returns true if it has audio track
SDL::MPEG::has_video returns true if it has a video track
SDL::MPEG::width returns the width of the video in pixels
SDL::MPEG::height returns the height of the video in pixels
SDL::MPEG::size returns the total size of the clip in bytes
SDL::MPEG::offset returns the offset into the clip in bytes
SDL::MPEG::frame returns the offset into the clip in fames
SDL::MPEG::fps returns the play rate in frames per second
SDL::MPEG::time returns the current play time in seconds
SDL::MPEG::length returns the total play time in seconds
<<lessSYNOPSIS
$info = new SDL::MPEG -from => $mpeg;
SDL::MPEG provides an interface to quering the status of a SMPEG stream.
METHODS
SDL::MPEG::has_audio returns true if it has audio track
SDL::MPEG::has_video returns true if it has a video track
SDL::MPEG::width returns the width of the video in pixels
SDL::MPEG::height returns the height of the video in pixels
SDL::MPEG::size returns the total size of the clip in bytes
SDL::MPEG::offset returns the offset into the clip in bytes
SDL::MPEG::frame returns the offset into the clip in fames
SDL::MPEG::fps returns the play rate in frames per second
SDL::MPEG::time returns the current play time in seconds
SDL::MPEG::length returns the total play time in seconds
Download (0.76MB)
Added: 2006-11-16 License: Perl Artistic License Price:
1074 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 offset 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