Audio::FindChunks 0.03
Sponsored Links
Audio::FindChunks 0.03 Ranking & Summary
File size:
0.024 MB
Platform:
Any Platform
License:
Perl Artistic License
Price:
Downloads:
1222
Date added:
2006-06-19
Publisher:
Ilya Zakharevich
Audio::FindChunks 0.03 description
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 << min_silence_sec # Ignore short gaps
min_start_silence_sec << min_boundary_silence_sec # Same at start
min_end_silence_sec << min_boundary_silence_sec # Same at end
min_silence_chunks_merge << min_silence_chunks # See above
cache_rms_write <<< cache_rms # Boolean: write RMS cache
cache_rms_read <<< cache_rms # Boolean: read RMS cache (unless filter)
The following values default to undef:
filename # if undef, read data from STDIN
stem_strip_extension # Boolean: filestem has no extension
filter # If true, PCM data is mirrored to out_fh
rms_filename # Specify cache file explicitly
raw_pcm # The input has no WAV header
override_header_info # The user specified values override WAV header
cache_rms # Use cache file (see *_write, *_read above)
skip_medians # Boolean: do not calculate 3-medians
subchunk_size # Optimization of calculation of RMS; the
# best value depends on the processor cache
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 << min_silence_sec # Ignore short gaps
min_start_silence_sec << min_boundary_silence_sec # Same at start
min_end_silence_sec << min_boundary_silence_sec # Same at end
min_silence_chunks_merge << min_silence_chunks # See above
cache_rms_write <<< cache_rms # Boolean: write RMS cache
cache_rms_read <<< cache_rms # Boolean: read RMS cache (unless filter)
The following values default to undef:
filename # if undef, read data from STDIN
stem_strip_extension # Boolean: filestem has no extension
filter # If true, PCM data is mirrored to out_fh
rms_filename # Specify cache file explicitly
raw_pcm # The input has no WAV header
override_header_info # The user specified values override WAV header
cache_rms # Use cache file (see *_write, *_read above)
skip_medians # Boolean: do not calculate 3-medians
subchunk_size # Optimization of calculation of RMS; the
# best value depends on the processor cache
Audio::FindChunks 0.03 Screenshot
Audio::FindChunks 0.03 Keywords
FindChunks
RMS
FindChunks 0.03
PCM
Files Into
audio files
sec
silence
min
likewise
signal
1
Audio::FindChunks
AudioFindChunks
Audio::FindChunks 0.03
Libraries
Bookmark Audio::FindChunks 0.03
Audio::FindChunks 0.03 Copyright
WareSeeker periodically updates pricing and software information of Audio::FindChunks 0.03 full version from the publisher, so some information may be slightly out-of-date. You should confirm all information before relying on it. Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future development of Audio::FindChunks 0.03 Edition. Download links are directly from our publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed
Featured Software
Want to place your software product here?
Please contact us for consideration.
Contact WareSeeker.com
Related Information
Related Software
Audio::ConvTools is a API to convert audio files from/to mp3 ogg and wav. Free Download
Audio::Radio::Sirius is a Perl module to control a Sirius satellite radio tuner. Free Download
Poissonrun runs a given command statistically once every T seconds. Free Download
Audio::Ao is a Perl wrapper for the Ao audio library. Free Download
Audio::Mad is a Perl interface to the mad MPEG decoder library. Free Download
Audio::AMR::Decode is a Perl extension do decode .amr files. Free Download
audio_rename can rename an audio file via information got via MP3::Tag. Free Download
pytick is a customizable stock ticker. Free Download
Latest Software
Popular Software
Favourite Software