Tweak to handle full audio files without crashing

This commit is contained in:
kris 2022-07-03 22:32:36 +01:00
parent a9e7a1bbff
commit 18a16999b0
1 changed files with 4 additions and 3 deletions

View File

@ -36,7 +36,7 @@ def filter_audio(
x2 = 0 x2 = 0
x1 = 1.0 x1 = 1.0
scale = 650 # TODO: analytic expression scale = 1150 # TODO: analytic expression
maxy = 0 maxy = 0
cycles_per_sample = int(sim_rate / sample_rate) cycles_per_sample = int(sim_rate / sample_rate)
@ -48,7 +48,7 @@ def filter_audio(
cycles = 0 cycles = 0
y = 0 y = 0
bias = 1.0 bias = 1.0
while audio_idx <= len(audio) / 10: while audio_idx < len(audio) / 1:
if audio_idx % 10000 == 0: if audio_idx % 10000 == 0:
print(audio_idx, len(audio), y / scale, x1, sample, duty_cycle, print(audio_idx, len(audio), y / scale, x1, sample, duty_cycle,
next_toggle) next_toggle)
@ -71,7 +71,8 @@ def filter_audio(
# x1 = -1.0 # x1 = -1.0
if bias == 1.0: if bias == 1.0:
audio_idx += 1 audio_idx += 1
sample = audio[audio_idx] if audio_idx < len(audio):
sample = audio[audio_idx]
duty_cycle = int((sample + 1) * cycles_per_sample / 2) duty_cycle = int((sample + 1) * cycles_per_sample / 2)
else: else:
duty_cycle = cycles_per_sample - duty_cycle duty_cycle = cycles_per_sample - duty_cycle