Controlled "uneven" playback

Effects, Recipes, Interfacing with other software, etc.
Forum rules
If you require help using Audacity, please post on the forum board relevant to your operating system:
Windows
Mac OS X
GNU/Linux and Unix-like
Post Reply
element22
Posts: 4
Joined: Thu Oct 12, 2017 1:20 am
Operating System: Windows 7

Controlled "uneven" playback

Post by element22 » Thu Oct 12, 2017 1:29 am

I need to play back an audio file in a controllably "uneven" way (kind of like a record player where you can sometimes slow the record back a bit or speed it up a bit). To control this wobble I have a list of time code locations where the "playback head" should be in at a given point of actual playback time. These time code locations follow the correct playback time but have a slight "wobble" built which I want to EXACTLY reproduce. Does anyone know if Audacity can do this (perhaps with some plugin or script) or if there's some other audio software that can do this?

steve
Site Admin
Posts: 47579
Joined: Sat Dec 01, 2007 11:43 am
Operating System: Linux *buntu
Contact:

Re: Controlled "uneven" playback

Post by steve » Thu Oct 12, 2017 10:47 am

There is specialist software for this called "Capstan" by Celemony, but it has the rather high price tag of €3790 (http://www.celemony.com/en/capstan).

In Audacity you could try using a "Time track", though you will not be able to make the changes exact.
Probably the best job (though extremely tedious work), would be to make successive approximations using the "Sliding Time Stretch / Pitch Shift" and / or "Change Speed" effects:
http://manual.audacityteam.org/man/slid ... shift.html
http://manual.audacityteam.org/man/change_speed.html
9/10 questions are answered in the FREQUENTLY ASKED QUESTIONS (FAQ)

element22
Posts: 4
Joined: Thu Oct 12, 2017 1:20 am
Operating System: Windows 7

Re: Controlled "uneven" playback

Post by element22 » Thu Oct 12, 2017 11:18 am

Thanks. Looks like Capstan has a 5-day rental option for $199 which is more reasonable (I emailed them asking if Capstan would do what I need). As far as the "Time Track" in Audacity, is there any way to read in the points for the "Time Track" curve from a file, rather than creating the curve by hand? I can format my custom time code list any way I want, if only Audacity can read it in somehow.

steve
Site Admin
Posts: 47579
Joined: Sat Dec 01, 2007 11:43 am
Operating System: Linux *buntu
Contact:

Re: Controlled "uneven" playback

Post by steve » Thu Oct 12, 2017 12:14 pm

element22 wrote:is there any way to read in the points for the "Time Track" curve from a file
There is no 'official' way to do that, but it would be possible to hack the AUP file.

For an overview of Audacity's "project" format, see: http://manual.audacityteam.org/man/auda ... jects.html

Here is a very simple project, just one 10 second audio track with a Time Track and 3 control points in the Time Track:

Code: Select all

<?xml version="1.0" standalone="no" ?>
<!DOCTYPE project PUBLIC "-//audacityproject-1.3.0//DTD//EN" "http://audacity.sourceforge.net/xml/audacityproject-1.3.0.dtd" >
<project xmlns="http://audacity.sourceforge.net/xml/" projname="timetrack_data" version="1.3.0" audacityversion="2.2.0-beta-Sep 25 2017" sel0="0.0000000000" sel1="10.0000000000" vpos="0" h="0.0000000000" zoom="88.3500000000" rate="44100.0" snapto="off" selectionformat="hh:mm:ss + samples" frequencyformat="Hz" bandwidthformat="octaves">
	<tags/>
	<timetrack name="Time Track" height="100" minimized="0" rangelower="0.900000000000" rangeupper="1.100000000000" displaylog="0" interpolatelog="1">
		<envelope numpoints="3">
			<controlpoint t="0.000000000000" val="1.000000000000"/>
			<controlpoint t="5.019807583475" val="1.100000023842"/>
			<controlpoint t="9.977362761743" val="0.997826099396"/>
		</envelope>
	</timetrack>
	<wavetrack name="Audio Track" channel="2" linked="0" mute="0" solo="0" height="150" minimized="0" isSelected="0" rate="44100" gain="1.0" pan="0.0">
		<waveclip offset="0.00000000">
			<sequence maxsamples="262144" sampleformat="262159" numsamples="441000">
				<waveblock start="0">
					<simpleblockfile filename="e00002f0.au" len="262144" min="-0.8" max="0.8" rms="0.565686"/>
				</waveblock>
				<waveblock start="262144">
					<simpleblockfile filename="e000061f.au" len="178856" min="-0.8" max="0.8" rms="0.565685"/>
				</waveblock>
			</sequence>
			<envelope numpoints="0"/>
		</waveclip>
	</wavetrack>
</project>
Another possibility would be to modify / extend this "slied-speed" Nyquist plug-in: viewtopic.php?p=329789#p329789
9/10 questions are answered in the FREQUENTLY ASKED QUESTIONS (FAQ)

element22
Posts: 4
Joined: Thu Oct 12, 2017 1:20 am
Operating System: Windows 7

Re: Controlled "uneven" playback

Post by element22 » Fri Oct 13, 2017 2:56 am

Thanks, will give this XML file a try.

Post Reply