1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-09-19 17:40:51 +02:00

Add more spectral images

This commit is contained in:
James Crook 2018-02-18 16:55:56 +00:00 committed by Paul Licameli
parent a9d6be00a6
commit fe03e3cf51
2 changed files with 102 additions and 7 deletions

View File

@ -72,9 +72,11 @@ def quickTest() :
def setup() :
global path
global sample_path
global sample
global sample2
path = 'C:\\Users\\James Crook\\'
sample_path ='C:\\Users\\James Crook\\Music\\'
sample ='C:\\Users\\James Crook\\Music\\The Poodle Podcast.wav'
sample2 ='C:\\Users\\James Crook\\Music\\PoodlePodStereo.wav'
startPipes()
@ -91,6 +93,13 @@ def capture( name, what ) :
global path
do( 'Screenshot: Path="'+path+name+'" CaptureWhat=' + what )
def loadExample( name ):
global sample_path
makeWayForTracks( )
do( 'Import2: Filename="'+sample_path+name+'"' )
do( 'Select: First=0 Last=0 Start=0 End=0')
do( 'FitInWindow' )
def loadMonoTrack():
global sample
makeWayForTracks( )

View File

@ -8,6 +8,7 @@
#load and run the common core.
exec( open("docimages_core.py" ).read() )
import math
# 11 2KHz tones, of decreasing amplitude.
@ -39,22 +40,107 @@ def spectro_imagesA() :
# As spectrogram.
do( 'SetTrack: Track=0 Display=Spectrogram')
do( 'Select: Start=55 End=70 First=0 Last=1')
capture( 'Spectral002.png', 'First_Track' )
capture( 'Spectral002.png', 'All_Tracks' )
# Half spectrogram, half wave.
do( 'SetTrack: Channel=1 Display=Waveform')
capture( 'MixedMode.png', 'First_Track' )
capture( 'MixedMode.png', 'All_Tracks' )
def spectro_imagesB():
makeStepper();
# Stepper tone, viewed in dB.
do( 'SetTrack: Scale=dB')
capture( 'Spectral003.png', 'First_Two_Tracks' )
capture( 'Spectral003.png', 'All_Tracks' )
# As spectrogram.
do( 'SetTrack: Display=Spectrogram')
capture( 'Spectral004.png', 'First_Two_Tracks' )
capture( 'Spectral004.png', 'All_Tracks' )
def spectro_imagesC():
loadExample( 'AudacitySpectral.wav' )
capture( 'Spectral005.png', 'All_Tracks' )
do( 'SetTrack: Scale=dB')
capture( 'Spectral006.png', 'All_Tracks' )
do( 'SetTrack: Display=Spectrogram')
capture( 'Spectral007.png', 'All_Tracks' )
def setWindow( name, value ):
do( 'SetTrack: SpecPrefs=1 Name="Window Size '+value+'"' )
do( 'SetPreference: Name="/Spectrum/FFTSize" Reload=1 Value='+value )
do( 'SetTrack: Track=0 Display=Spectrogram' )
capture( name + value + '.png', 'All_Tracks' )
def multiWindow( name ) :
setWindow( name, "256" )
setWindow( name, "512" )
setWindow( name, "2048" )
setWindow( name, "4096" )
setWindow( name, "8192" )
setWindow( name, "1024" ) # done last so we restore the default.
def spectro_imagesD():
makeWayForTracks()
do( 'NewMonoTrack' )
do( 'Select: Start=0.7 End=1.3')
do( 'Silence' ) #Just so we can watch.
do( 'Select: Start=0.8 End=1.2')
do( 'ZoomSel')
do( 'Select: Start=0.7 End=1.3')
do( 'Tone: Frequency=3000 Amplitude=0.8' )
do( 'Select: Start=0.99 End=0.99005' )
do( 'Tone: Frequency=12000 Amplitude=0.9' )
do( 'Select: Start=1.01 End=1.01005' )
do( 'Tone: Frequency=12000 Amplitude=0.9' )
do( 'Select: Start=0 End=0' )
multiWindow( 'SpectralAt' )
def spectro_imagesE():
makeWayForTracks()
do( 'NewMonoTrack' )
do( 'Select: Start=0 End=1.2')
do( 'ZoomSel')
do( 'Pluck' )
do( 'Select: Start=0.1 End=1.0')
do( 'ZoomSel')
multiWindow( 'SpectralNote' )
def makeScale( start, end, count ) :
a = math.exp( math.log( end/start) /(count-1 ))
makeWayForTracks()
do( 'NewMonoTrack' )
do( 'Select: Start=0 End=' + str( count/10 ))
do( 'Silence' ) #To see it happen...
do( 'SetTrack: Track=0 SpecPrefs=1 Display=Spectrogram' )
do( 'ZoomSel' )
#do( 'SetTrack: Track=0 Display=Spectrogram' )
for i in range( 0 , count , 2 ):
note = start * ( a ** i )
#print( note )
do( 'Select: Start=' + str( i / 10) + ' End=' + str( (i+1)/10 ))
do( 'Tone: Frequency=' +str( note ) )
do( 'Select: Start=' + str( i / 10) + ' End=' + str( ( i / 10) +0.05))
do( 'FadeIn' )
do( 'Select: Start=' + str( (i+1) / 10 -0.05) + ' End=' + str( (i+1) / 10 ))
do( 'FadeOut' )
do( 'FitInWindow' )
#do( 'Select: Start=0 End=' + str( count/10 ))
#do( 'Join' )
do( 'Select: Start=0 End=0')
def spectro_imagesF():
makeScale( 200, 4000, 100 )
do( 'SetTrack: Track=0 Display=Spectrogram' )
capture( 'ScaleLin.png', 'All_Tracks' )
do( 'SetPreference: Name=/Spectrum/ScaleType Value=1 Reload=1')
capture( 'ScaleLog.png', 'All_Tracks' )
do( 'SetPreference: Name=/Spectrum/ScaleType Value=0 Reload=1')
#quickTest()
spectro_imagesA()
spectro_imagesB()
#spectro_imagesA()
#spectro_imagesB()
#spectro_imagesC()
#spectro_imagesD()
#spectro_imagesE()
spectro_imagesF()