[LAU] loop speeding in sample level accuracy
Dan Richert
dan.richert at gmail.com
Thu Sep 18 14:38:01 EDT 2008
SoX can do the job with some help. Here's a little Perl script to
figure out the speed scaling ratio based on the desired new length in
samples:
#!/usr/bin/perl
if(@ARGV != 3){ die "Usage: resize-audio.pl <in_file> <new_size>
<out_file>\n"; }
($in_file,$new_size,$out_file) = @ARGV;
$size = `sox $in_file -n stat 2>&1 |grep ^Samples |awk '{print \$3}'`;
$ratio = $size / $new_size;
print "$ratio\n";
`sox $in_file $out_file speed $ratio`;
In the couple tests I ran, it doesn't get to the *exact* new size
specified in samples, but pretty close -- I converted a file 12486
samples long to 3000 samples and ended up with a file with 3002 samples.
Jari Suominen wrote:
> Tiago Tavares kirjoitti:
>
>> Can SoX do the job?
>>
>
> Nope. Speed shift takes in prosent or cents.
>
> ....j
>
>
>> On Thu, Sep 18, 2008 at 1:51 PM, Jari Suominen <jari.suominen at helsinki.fi>wrote:
>>
>>
>>> Hello,
>>>
>>> I'm trying to search a program (with no success) that could used for
>>> speeding up an audio file to a certain length. I mean, I would have a
>>> audio file that has 40000 samples, and I would need it to be 40010. And
>>> the pitch of the file can/should change. All speed change stuff that I
>>> have found will take semitones/cents/procents as a input parameter. I
>>> would wan't to only input the exact length (in samples) that I need.
>>>
>>> My purpose is basically make bunch of files that are loopable and have
>>> equal length with each other.
>>>
>>> Does this thing exist or do I have to make it myself?
>>>
>>> Thanks!
>>>
>>> ..j
>>> _______________________________________________
>>> Linux-audio-user mailing list
>>> Linux-audio-user at lists.linuxaudio.org
>>> http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user
>>>
>>>
>>
>>
>
> _______________________________________________
> Linux-audio-user mailing list
> Linux-audio-user at lists.linuxaudio.org
> http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user
>
More information about the Linux-audio-user
mailing list