<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://onlinesequencer.net/w/index.php?action=history&amp;feed=atom&amp;title=Vocal_synthesis_using_sine</id>
	<title>Vocal synthesis using sine - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://onlinesequencer.net/w/index.php?action=history&amp;feed=atom&amp;title=Vocal_synthesis_using_sine"/>
	<link rel="alternate" type="text/html" href="https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;action=history"/>
	<updated>2026-06-10T00:45:44Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=817&amp;oldid=prev</id>
		<title>Benvisions: Removing unnecessary bold.</title>
		<link rel="alternate" type="text/html" href="https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=817&amp;oldid=prev"/>
		<updated>2023-08-07T11:59:52Z</updated>

		<summary type="html">&lt;p&gt;Removing unnecessary bold.&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 04:59, 7 August 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l4&quot;&gt;Line 4:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 4:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The easiest way to do FFT is using [https://tiusic.com/os_fft/deploy/index.html Liam&amp;#039;s FFT tool]. Just upload a WAV file, choose a preset mode, and click GO. Then you can either copy the notes and paste them into a sequence, or download the sequence file and drag/drop it into OS. There are lots of advanced options to play with to optimize the output. This tool is based on the older fft.py script, which is now deprecated.  With the correct settings applied, it can use multiple copies of the 8 Bit Sine instrument to reproduce sounds more clearly than Jacob&amp;#039;s FFT, but will generate hundreds of thousands of notes per minute.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The easiest way to do FFT is using [https://tiusic.com/os_fft/deploy/index.html Liam&amp;#039;s FFT tool]. Just upload a WAV file, choose a preset mode, and click GO. Then you can either copy the notes and paste them into a sequence, or download the sequence file and drag/drop it into OS. There are lots of advanced options to play with to optimize the output. This tool is based on the older fft.py script, which is now deprecated.  With the correct settings applied, it can use multiple copies of the 8 Bit Sine instrument to reproduce sounds more clearly than Jacob&amp;#039;s FFT, but will generate hundreds of thousands of notes per minute.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039;&lt;/del&gt;Restoring Low Frequency Clarity&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039; &lt;/del&gt;===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Restoring Low Frequency Clarity ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This algorithm is highly effective at replicating the mid-to-high frequencies of an sound file, but depending on the chunking frequency in the Advanced Options panel, the lower frequencies will tend to be grainy and noisy, and will also lack clarity. A possible way to mitigate this limitation is to time-stretch your sound file using an audio editor, such as Audacity. Using the Effects tab found on the topmost panel, navigate to Pitch and Tempo (for Audacity versions 3.3+), then click on the Change Tempo option, while having the audio clip selected. Change the Beats per Minute field to &amp;quot;from 16 to 1&amp;quot; (either that or another power of 2 value such as 8-1 or 32-1, higher values give more frequency clarity, but will significantly inflate the note count). It&amp;#039;s also essential to make sure that the high quality stretching checkbox is marked, otherwise Audacity will use the default algorithm of tempo-stretching, which is very low quality. The purpose of stretching the sound file is to allow more data for chunking in the FFT converter, which will increase frequency accuracy and also retain time accuracy. Return to the converter, open the time-stretched sound file, and divide both the minimum and maximum chunking frequency by the value which the audio has been time-stretched (e.g. 16). Run Liam&amp;#039;s FFT converter, this time with the time-stretched audio file. Once it is finished, import the output *.sequence file into Online Sequencer and use the console to stretch the notes by a factor of 1/N, with N being the value used to time stretch the sound file. The resulting sequence should have clearer low frequencies, and less graininess or noise.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This algorithm is highly effective at replicating the mid-to-high frequencies of an sound file, but depending on the chunking frequency in the Advanced Options panel, the lower frequencies will tend to be grainy and noisy, and will also lack clarity. A possible way to mitigate this limitation is to time-stretch your sound file using an audio editor, such as Audacity. Using the Effects tab found on the topmost panel, navigate to Pitch and Tempo (for Audacity versions 3.3+), then click on the Change Tempo option, while having the audio clip selected. Change the Beats per Minute field to &amp;quot;from 16 to 1&amp;quot; (either that or another power of 2 value such as 8-1 or 32-1, higher values give more frequency clarity, but will significantly inflate the note count). It&amp;#039;s also essential to make sure that the high quality stretching checkbox is marked, otherwise Audacity will use the default algorithm of tempo-stretching, which is very low quality. The purpose of stretching the sound file is to allow more data for chunking in the FFT converter, which will increase frequency accuracy and also retain time accuracy. Return to the converter, open the time-stretched sound file, and divide both the minimum and maximum chunking frequency by the value which the audio has been time-stretched (e.g. 16). Run Liam&amp;#039;s FFT converter, this time with the time-stretched audio file. Once it is finished, import the output *.sequence file into Online Sequencer and use the console to stretch the notes by a factor of 1/N, with N being the value used to time stretch the sound file. The resulting sequence should have clearer low frequencies, and less graininess or noise.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Benvisions</name></author>
	</entry>
	<entry>
		<id>https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=816&amp;oldid=prev</id>
		<title>Spherey: replaced failed wikipedia commons file embeds with links instead</title>
		<link rel="alternate" type="text/html" href="https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=816&amp;oldid=prev"/>
		<updated>2023-08-07T02:13:55Z</updated>

		<summary type="html">&lt;p&gt;replaced failed wikipedia commons file embeds with links instead&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:13, 6 August 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l5&quot;&gt;Line 5:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 5:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== &amp;#039;&amp;#039;&amp;#039;Restoring Low Frequency Clarity&amp;#039;&amp;#039;&amp;#039; ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== &amp;#039;&amp;#039;&amp;#039;Restoring Low Frequency Clarity&amp;#039;&amp;#039;&amp;#039; ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[File:Amenbreak drum sample before conversion using Liam&#039;s FFT.wav|thumb|An amenbreak drum sample audio file before conversion using Liam&#039;s FFT]]&lt;/del&gt;This algorithm is highly effective at replicating the mid-to-high frequencies of an sound file, but depending on the chunking frequency in the Advanced Options panel, the lower frequencies will tend to be grainy and noisy, and will also lack clarity. A possible way to mitigate this limitation is to time-stretch your sound file using an audio editor, such as Audacity. Using the Effects tab found on the topmost panel, navigate to Pitch and Tempo (for Audacity versions 3.3+), then click on the Change Tempo option, while having the audio clip selected. Change the Beats per Minute field to &quot;from 16 to 1&quot; (either that or another power of 2 value such as 8-1 or 32-1, higher values give more frequency clarity, but will significantly inflate the note count). It&#039;s also essential to make sure that the high quality stretching checkbox is marked, otherwise Audacity will use the default algorithm of tempo-stretching, which is very low quality. The purpose of stretching the sound file is to allow more data for chunking in the FFT converter, which will increase frequency accuracy and also retain time accuracy. Return to the converter, open the time-stretched sound file, and divide both the minimum and maximum chunking frequency by the value which the audio has been time-stretched (e.g. 16). Run Liam&#039;s FFT converter, this time with the time-stretched audio file. Once it is finished, import the output *.sequence file into Online Sequencer and use the console to stretch the notes by a factor of 1/N, with N being the value used to time stretch the sound file. The resulting sequence should have clearer low frequencies, and less graininess or noise.&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[File:Amenbreak drum sample after conversion and exported to WAV.wav|thumb|An amenbreak drum sample audio file after conversion using Liam&#039;s FFT, rendered to *.wav, using the specified method to enhance similarity to the original file]]&lt;/del&gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Additional Note: To make the output sequence sound more like the original audio file, try using a windowing function (e.g. Blackman), a high extra-detune value (e.g. 4800), a low minimum note volume (e.g. 0.0025), stereo (if needed), increasing the number of microtones (e.g. 4 microtones), and perhaps increasing the overall output volume (e.g. 4). The example settings achieve a result that sounds rather close to the original sound file, although it will be very note dense, so it&#039;s best to export the sequence as an audio file to listen to it without lag or cutouts.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This algorithm is highly effective at replicating the mid-to-high frequencies of an sound file, but depending on the chunking frequency in the Advanced Options panel, the lower frequencies will tend to be grainy and noisy, and will also lack clarity. A possible way to mitigate this limitation is to time-stretch your sound file using an audio editor, such as Audacity. Using the Effects tab found on the topmost panel, navigate to Pitch and Tempo (for Audacity versions 3.3+), then click on the Change Tempo option, while having the audio clip selected. Change the Beats per Minute field to &quot;from 16 to 1&quot; (either that or another power of 2 value such as 8-1 or 32-1, higher values give more frequency clarity, but will significantly inflate the note count). It&#039;s also essential to make sure that the high quality stretching checkbox is marked, otherwise Audacity will use the default algorithm of tempo-stretching, which is very low quality. The purpose of stretching the sound file is to allow more data for chunking in the FFT converter, which will increase frequency accuracy and also retain time accuracy. Return to the converter, open the time-stretched sound file, and divide both the minimum and maximum chunking frequency by the value which the audio has been time-stretched (e.g. 16). Run Liam&#039;s FFT converter, this time with the time-stretched audio file. Once it is finished, import the output *.sequence file into Online Sequencer and use the console to stretch the notes by a factor of 1/N, with N being the value used to time stretch the sound file. The resulting sequence should have clearer low frequencies, and less graininess or noise.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Additional Note: To make the output sequence sound more like the original audio file, try using a windowing function (e.g. Blackman), a high extra-detune value (e.g. 4800), a low minimum note volume (e.g. 0.0025), stereo (if needed), increasing the number of microtones (e.g. 4 microtones), and perhaps increasing the overall output volume (e.g. 4). The example settings achieve a result that sounds rather close to the original sound file, although it will be very note dense, so it&#039;s best to export the sequence as an audio file to listen to it without lag or cutouts. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The following files demonstrate a before-and-after of conversion using this method:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;https://commons.wikimedia.org/wiki/File:Amenbreak_drum_sample_before_conversion_using_Liam%27s_FFT.wav&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;https://commons.wikimedia.org/wiki/File:Amenbreak_drum_sample_after_conversion_and_exported_to_WAV.wav&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Jacob&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Jacob&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Spherey</name></author>
	</entry>
	<entry>
		<id>https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=815&amp;oldid=prev</id>
		<title>Spherey: added audio files for auditory demonstration of the converter</title>
		<link rel="alternate" type="text/html" href="https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=815&amp;oldid=prev"/>
		<updated>2023-08-07T02:10:54Z</updated>

		<summary type="html">&lt;p&gt;added audio files for auditory demonstration of the converter&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:10, 6 August 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l5&quot;&gt;Line 5:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 5:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== &amp;#039;&amp;#039;&amp;#039;Restoring Low Frequency Clarity&amp;#039;&amp;#039;&amp;#039; ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== &amp;#039;&amp;#039;&amp;#039;Restoring Low Frequency Clarity&amp;#039;&amp;#039;&amp;#039; ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This algorithm is highly effective at replicating the mid-to-high frequencies of an sound file, but depending on the chunking frequency in the Advanced Options panel, the lower frequencies will tend to be grainy and noisy, and will also lack clarity. A possible way to mitigate this limitation is to time-stretch your sound file using an audio editor, such as Audacity. Using the Effects tab found on the topmost panel, navigate to Pitch and Tempo (for Audacity versions 3.3+), then click on the Change Tempo option, while having the audio clip selected. Change the Beats per Minute field to &quot;from 16 to 1&quot; (either that or another power of 2 value such as 8-1 or 32-1, higher values give more frequency clarity, but will significantly inflate the note count). It&#039;s also essential to make sure that the high quality stretching checkbox is marked, otherwise Audacity will use the default algorithm of tempo-stretching, which is very low quality. The purpose of stretching the sound file is to allow more data for chunking in the FFT converter, which will increase frequency accuracy and also retain time accuracy. Return to the converter, open the time-stretched sound file, and divide both the minimum and maximum chunking frequency by the value which the audio has been time-stretched (e.g. 16). Run Liam&#039;s FFT converter, this time with the time-stretched audio file. Once it is finished, import the output *.sequence file into Online Sequencer and use the console to stretch the notes by a factor of 1/N, with N being the value used to time stretch the sound file. The resulting sequence should have clearer low frequencies, and less graininess or noise.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[File:Amenbreak drum sample before conversion using Liam&#039;s FFT.wav|thumb|An amenbreak drum sample audio file before conversion using Liam&#039;s FFT]]&lt;/ins&gt;This algorithm is highly effective at replicating the mid-to-high frequencies of an sound file, but depending on the chunking frequency in the Advanced Options panel, the lower frequencies will tend to be grainy and noisy, and will also lack clarity. A possible way to mitigate this limitation is to time-stretch your sound file using an audio editor, such as Audacity. Using the Effects tab found on the topmost panel, navigate to Pitch and Tempo (for Audacity versions 3.3+), then click on the Change Tempo option, while having the audio clip selected. Change the Beats per Minute field to &quot;from 16 to 1&quot; (either that or another power of 2 value such as 8-1 or 32-1, higher values give more frequency clarity, but will significantly inflate the note count). It&#039;s also essential to make sure that the high quality stretching checkbox is marked, otherwise Audacity will use the default algorithm of tempo-stretching, which is very low quality. The purpose of stretching the sound file is to allow more data for chunking in the FFT converter, which will increase frequency accuracy and also retain time accuracy. Return to the converter, open the time-stretched sound file, and divide both the minimum and maximum chunking frequency by the value which the audio has been time-stretched (e.g. 16). Run Liam&#039;s FFT converter, this time with the time-stretched audio file. Once it is finished, import the output *.sequence file into Online Sequencer and use the console to stretch the notes by a factor of 1/N, with N being the value used to time stretch the sound file. The resulting sequence should have clearer low frequencies, and less graininess or noise.&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[File:Amenbreak drum sample after conversion and exported to WAV.wav|thumb|An amenbreak drum sample audio file after conversion using Liam&#039;s FFT, rendered to *.wav, using the specified method to enhance similarity to the original file]]&lt;/ins&gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Additional Note: To make the output sequence sound more like the original audio file, try using a windowing function (e.g. Blackman), a high extra-detune value (e.g. 4800), a low minimum note volume (e.g. 0.0025), stereo (if needed), increasing the number of microtones (e.g. 4 microtones), and perhaps increasing the overall output volume (e.g. 4). The example settings achieve a result that sounds rather close to the original sound file, although it will be very note dense, so it&#039;s best to export the sequence as an audio file to listen to it without lag or cutouts.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Additional Note: To make the output sequence sound more like the original audio file, try using a windowing function (e.g. Blackman), a high extra-detune value (e.g. 4800), a low minimum note volume (e.g. 0.0025), stereo (if needed), increasing the number of microtones (e.g. 4 microtones), and perhaps increasing the overall output volume (e.g. 4). The example settings achieve a result that sounds rather close to the original sound file, although it will be very note dense, so it&#039;s best to export the sequence as an audio file to listen to it without lag or cutouts.&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Jacob&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Jacob&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Spherey</name></author>
	</entry>
	<entry>
		<id>https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=814&amp;oldid=prev</id>
		<title>Spherey: added a method to restore low frequency clarity in liams fft using tempo stretching in audacity as well as a guide to make the output sequence sound a lot like the original sound file</title>
		<link rel="alternate" type="text/html" href="https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=814&amp;oldid=prev"/>
		<updated>2023-08-07T01:26:26Z</updated>

		<summary type="html">&lt;p&gt;added a method to restore low frequency clarity in liams fft using tempo stretching in audacity as well as a guide to make the output sequence sound a lot like the original sound file&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:26, 6 August 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l3&quot;&gt;Line 3:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 3:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Liam&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Liam&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The easiest way to do FFT is using [https://tiusic.com/os_fft/deploy/index.html Liam&amp;#039;s FFT tool]. Just upload a WAV file, choose a preset mode, and click GO. Then you can either copy the notes and paste them into a sequence, or download the sequence file and drag/drop it into OS. There are lots of advanced options to play with to optimize the output. This tool is based on the older fft.py script, which is now deprecated.  With the correct settings applied, it can use multiple copies of the 8 Bit Sine instrument to reproduce sounds more clearly than Jacob&amp;#039;s FFT, but will generate hundreds of thousands of notes per minute.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The easiest way to do FFT is using [https://tiusic.com/os_fft/deploy/index.html Liam&amp;#039;s FFT tool]. Just upload a WAV file, choose a preset mode, and click GO. Then you can either copy the notes and paste them into a sequence, or download the sequence file and drag/drop it into OS. There are lots of advanced options to play with to optimize the output. This tool is based on the older fft.py script, which is now deprecated.  With the correct settings applied, it can use multiple copies of the 8 Bit Sine instrument to reproduce sounds more clearly than Jacob&amp;#039;s FFT, but will generate hundreds of thousands of notes per minute.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=== &#039;&#039;&#039;Restoring Low Frequency Clarity&#039;&#039;&#039; ===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;This algorithm is highly effective at replicating the mid-to-high frequencies of an sound file, but depending on the chunking frequency in the Advanced Options panel, the lower frequencies will tend to be grainy and noisy, and will also lack clarity. A possible way to mitigate this limitation is to time-stretch your sound file using an audio editor, such as Audacity. Using the Effects tab found on the topmost panel, navigate to Pitch and Tempo (for Audacity versions 3.3+), then click on the Change Tempo option, while having the audio clip selected. Change the Beats per Minute field to &quot;from 16 to 1&quot; (either that or another power of 2 value such as 8-1 or 32-1, higher values give more frequency clarity, but will significantly inflate the note count). It&#039;s also essential to make sure that the high quality stretching checkbox is marked, otherwise Audacity will use the default algorithm of tempo-stretching, which is very low quality. The purpose of stretching the sound file is to allow more data for chunking in the FFT converter, which will increase frequency accuracy and also retain time accuracy. Return to the converter, open the time-stretched sound file, and divide both the minimum and maximum chunking frequency by the value which the audio has been time-stretched (e.g. 16). Run Liam&#039;s FFT converter, this time with the time-stretched audio file. Once it is finished, import the output *.sequence file into Online Sequencer and use the console to stretch the notes by a factor of 1/N, with N being the value used to time stretch the sound file. The resulting sequence should have clearer low frequencies, and less graininess or noise.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Additional Note: To make the output sequence sound more like the original audio file, try using a windowing function (e.g. Blackman), a high extra-detune value (e.g. 4800), a low minimum note volume (e.g. 0.0025), stereo (if needed), increasing the number of microtones (e.g. 4 microtones), and perhaps increasing the overall output volume (e.g. 4). The example settings achieve a result that sounds rather close to the original sound file, although it will be very note dense, so it&#039;s best to export the sequence as an audio file to listen to it without lag or cutouts.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Jacob&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Jacob&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l10&quot;&gt;Line 10:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 15:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Restoring High Frequency Sounds ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Restoring High Frequency Sounds ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Using this algorithm bounds you to the frequencies accessible by the 8 bit sine, which will often result in high frequencies getting cut off, making things sound muffled and certain syllables will be difficult to hear.  It is possible to get around this limitation and more accurately reproduce high frequency sounds in the sequencer.  In order to do this, you must first follow the instructions in the paragraph above as normal, except you should use a BPM that is a multiple of 4.  After that, select all of the notes and change them to 8 Bit Triangle.  Open the console and run this command: setDetune(13,2400) .  This makes all 8 Bit Sine notes sound 2 octaves higher than they are.  Next, open your sound file in an audio editor such as &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;audacity&lt;/del&gt;.  Slow down the sound to 25% of its original speed, and make sure you do not have any setting enabled which preserves the pitch of the sound.  In &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;audacity&lt;/del&gt;, this can be done by clicking the drop down menu next to the audio track, and changing the &quot;rate&quot; to a quarter of itself.  The purpose of this is to bring high frequency data down into the range which can be detected by the FFT Converter.  Return to the sequencer and set the sequence&#039;s tempo to a quarter of itself.  Run Jacob&#039;s FFT Converter in the console as before, this time importing the slowed down version of the audio.  Once it is finished, change the tempo back to normal.  You should have the original conversion in 8 Bit Triangle, and a different with more high frequencies in 8 bit sine.  They should completely overlap and sync up, creating a clearer sound.  Volume and EQ of the Sine and Triangle should be adjusted to your taste.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Using this algorithm bounds you to the frequencies accessible by the 8 bit sine, which will often result in high frequencies getting cut off, making things sound muffled and certain syllables will be difficult to hear.  It is possible to get around this limitation and more accurately reproduce high frequency sounds in the sequencer.  In order to do this, you must first follow the instructions in the paragraph above as normal, except you should use a BPM that is a multiple of 4.  After that, select all of the notes and change them to 8 Bit Triangle.  Open the console and run this command: setDetune(13,2400) .  This makes all 8 Bit Sine notes sound 2 octaves higher than they are.  Next, open your sound file in an audio editor such as &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Audacity&lt;/ins&gt;.  Slow down the sound to 25% of its original speed, and make sure you do not have any setting enabled which preserves the pitch of the sound.  In &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Audacity&lt;/ins&gt;, this can be done by clicking the drop down menu next to the audio track, and changing the &quot;rate&quot; to a quarter of itself.  The purpose of this is to bring high frequency data down into the range which can be detected by the FFT Converter.  Return to the sequencer and set the sequence&#039;s tempo to a quarter of itself.  Run Jacob&#039;s FFT Converter in the console as before, this time importing the slowed down version of the audio.  Once it is finished, change the tempo back to normal.  You should have the original conversion in 8 Bit Triangle, and a different with more high frequencies in 8 bit sine.  They should completely overlap and sync up, creating a clearer sound.  Volume and EQ of the Sine and Triangle should be adjusted to your taste.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Please note that this method is no longer necessary to use as Liam&amp;#039;s FFT can offer this level of quality with less effort.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Please note that this method is no longer necessary to use as Liam&amp;#039;s FFT can offer this level of quality with less effort.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:User experience]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:User experience]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Spherey</name></author>
	</entry>
	<entry>
		<id>https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=792&amp;oldid=prev</id>
		<title>Cool172: /* Liam&#039;s FFT */</title>
		<link rel="alternate" type="text/html" href="https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=792&amp;oldid=prev"/>
		<updated>2023-07-13T02:32:01Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Liam&amp;#039;s FFT&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:32, 12 July 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l2&quot;&gt;Line 2:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 2:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Liam&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Liam&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The easiest way to do FFT is using [https://tiusic.com/os_fft/deploy/index.html Liam&#039;s FFT tool]. Just upload a WAV file, choose a preset mode, and click GO. Then you can either copy the notes and paste them into a sequence, or download the sequence file and drag/drop it into OS. There are lots of advanced options to play with to optimize the output. This tool is based on the older fft.py script, which is now deprecated.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The easiest way to do FFT is using [https://tiusic.com/os_fft/deploy/index.html Liam&#039;s FFT tool]. Just upload a WAV file, choose a preset mode, and click GO. Then you can either copy the notes and paste them into a sequence, or download the sequence file and drag/drop it into OS. There are lots of advanced options to play with to optimize the output. This tool is based on the older fft.py script, which is now deprecated&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;.  With the correct settings applied, it can use multiple copies of the 8 Bit Sine instrument to reproduce sounds more clearly than Jacob&#039;s FFT, but will generate hundreds of thousands of notes per minute&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Jacob&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Jacob&amp;#039;s FFT ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l11&quot;&gt;Line 11:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 11:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Restoring High Frequency Sounds ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Restoring High Frequency Sounds ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Using this algorithm bounds you to the frequencies accessible by the 8 bit sine, which will often result in high frequencies getting cut off, making things sound muffled and certain syllables will be difficult to hear.  It is possible to get around this limitation and more accurately reproduce high frequency sounds in the sequencer.  In order to do this, you must first follow the instructions in the paragraph above as normal, except you should use a BPM that is a multiple of 4.  After that, select all of the notes and change them to 8 Bit Triangle.  Open the console and run this command: setDetune(13,2400) .  This makes all 8 Bit Sine notes sound 2 octaves higher than they are.  Next, open your sound file in an audio editor such as audacity.  Slow down the sound to 25% of its original speed, and make sure you do not have any setting enabled which preserves the pitch of the sound.  In audacity, this can be done by clicking the drop down menu next to the audio track, and changing the &amp;quot;rate&amp;quot; to a quarter of itself.  The purpose of this is to bring high frequency data down into the range which can be detected by the FFT Converter.  Return to the sequencer and set the sequence&amp;#039;s tempo to a quarter of itself.  Run Jacob&amp;#039;s FFT Converter in the console as before, this time importing the slowed down version of the audio.  Once it is finished, change the tempo back to normal.  You should have the original conversion in 8 Bit Triangle, and a different with more high frequencies in 8 bit sine.  They should completely overlap and sync up, creating a clearer sound.  Volume and EQ of the Sine and Triangle should be adjusted to your taste.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Using this algorithm bounds you to the frequencies accessible by the 8 bit sine, which will often result in high frequencies getting cut off, making things sound muffled and certain syllables will be difficult to hear.  It is possible to get around this limitation and more accurately reproduce high frequency sounds in the sequencer.  In order to do this, you must first follow the instructions in the paragraph above as normal, except you should use a BPM that is a multiple of 4.  After that, select all of the notes and change them to 8 Bit Triangle.  Open the console and run this command: setDetune(13,2400) .  This makes all 8 Bit Sine notes sound 2 octaves higher than they are.  Next, open your sound file in an audio editor such as audacity.  Slow down the sound to 25% of its original speed, and make sure you do not have any setting enabled which preserves the pitch of the sound.  In audacity, this can be done by clicking the drop down menu next to the audio track, and changing the &amp;quot;rate&amp;quot; to a quarter of itself.  The purpose of this is to bring high frequency data down into the range which can be detected by the FFT Converter.  Return to the sequencer and set the sequence&amp;#039;s tempo to a quarter of itself.  Run Jacob&amp;#039;s FFT Converter in the console as before, this time importing the slowed down version of the audio.  Once it is finished, change the tempo back to normal.  You should have the original conversion in 8 Bit Triangle, and a different with more high frequencies in 8 bit sine.  They should completely overlap and sync up, creating a clearer sound.  Volume and EQ of the Sine and Triangle should be adjusted to your taste.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Please note that this method is no longer necessary to use as Liam&#039;s FFT can offer this level of quality with less effort.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:User experience]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:User experience]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Cool172</name></author>
	</entry>
	<entry>
		<id>https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=626&amp;oldid=prev</id>
		<title>Liam: Add a section about my new FFT tool</title>
		<link rel="alternate" type="text/html" href="https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=626&amp;oldid=prev"/>
		<updated>2023-04-14T02:51:34Z</updated>

		<summary type="html">&lt;p&gt;Add a section about my new FFT tool&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:51, 13 April 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;One of the key limitations of Online Sequencer is the inability to include audio from any outside source.  One way to get around this is by using a script which reconstructs any sound using 8 Bit Sine.  The results often have enough fidelity to discern lyrics, or the timbre of an instrument, depending on which FFT algorithm is used.  This method creates lots of notes, and requires a fast computer to both create and play back these sequences.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;One of the key limitations of Online Sequencer is the inability to include audio from any outside source.  One way to get around this is by using a script which reconstructs any sound using 8 Bit Sine.  The results often have enough fidelity to discern lyrics, or the timbre of an instrument, depending on which FFT algorithm is used.  This method creates lots of notes, and requires a fast computer to both create and play back these sequences&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;. Simpler sounds work best, like someone talking, or a clear sound effect.  More complex and busy sounds like a whole song, with many parts and layers, usually don&#039;t work as well, but can still produce usable results&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Purposes &lt;/del&gt;==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Liam&#039;s FFT &lt;/ins&gt;==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;FFT &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;scripts for Online sequencer allow any sound to be imported in to the sequencer, and saved for others to listen to, or be accessed later (unlike the add audio track feature, which &lt;/del&gt;is &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;just for transcribing)&lt;/del&gt;. &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; Simpler sounds work best&lt;/del&gt;, &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;like someone talking&lt;/del&gt;, &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;or a clear sound effect&lt;/del&gt;. &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; More complex &lt;/del&gt;and &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;busy sounds like &lt;/del&gt;a &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;whole song&lt;/del&gt;, with &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;many parts and layers&lt;/del&gt;, &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;usually dont work as well, but can still produce usable results&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The easiest way to do &lt;/ins&gt;FFT is &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;using [https://tiusic.com/os_fft/deploy/index.html Liam&#039;s FFT tool]&lt;/ins&gt;. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Just upload a WAV file&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;choose a preset mode&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;and click GO&lt;/ins&gt;. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Then you can either copy the notes &lt;/ins&gt;and &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;paste them into &lt;/ins&gt;a &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;sequence&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;or download the sequence file and drag/drop it into OS. There are lots of advanced options to play &lt;/ins&gt;with &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;to optimize the output. This tool is based on the older fft.py script&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;which is now deprecated&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Tutorial &lt;/del&gt;==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Jacob&#039;s FFT &lt;/ins&gt;==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Below is a script that can be used by copying and pasting it into the console on the sequencer.  Press F12 to access the console, then click in the box.  Once you see a blinking cursor, paste the script in.  It will ask you to upload an audio file.  MP3, WAV, and OGG are accepted.  This script should function the same regardless of the level of the signal in your file, and with mono and stereo files (final output will be mono).  It will generate 8 Bit Sine notes corresponding to the frequencies present in your file, with time resolution being equal to 1/16 grid at whatever tempo you have set.  Less notes will be placed if a slower tempo is used, but time resolution will suffer.  For most purposes, 110 BPM is fine, but it can be helpful to match the sequences BPM with that of the file you intend to upload (only if you are uploading a song) or to not change the BPM at all if you are incorporating this into an existing sequence.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Below is a script that can be used by copying and pasting it into the console on the sequencer.  Press F12 to access the console, then click in the box.  Once you see a blinking cursor, paste the script in.  It will ask you to upload an audio file.  MP3, WAV, and OGG are accepted.  This script should function the same regardless of the level of the signal in your file, and with mono and stereo files (final output will be mono).  It will generate 8 Bit Sine notes corresponding to the frequencies present in your file, with time resolution being equal to 1/16 grid at whatever tempo you have set.  Less notes will be placed if a slower tempo is used, but time resolution will suffer.  For most purposes, 110 BPM is fine, but it can be helpful to match the sequences BPM with that of the file you intend to upload (only if you are uploading a song) or to not change the BPM at all if you are incorporating this into an existing sequence.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[https://docs.google.com/document/d/1zGu4K8rJ6Uo0TCnnGYUzbV96ogTLS3pwL1sZhYT3jKc/edit?usp=sharing &amp;lt;u&amp;gt;&amp;lt;nowiki&amp;gt;[Jacob&amp;#039;s FFT Converter]&amp;lt;/nowiki&amp;gt;&amp;lt;/u&amp;gt;]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[https://docs.google.com/document/d/1zGu4K8rJ6Uo0TCnnGYUzbV96ogTLS3pwL1sZhYT3jKc/edit?usp=sharing &amp;lt;u&amp;gt;&amp;lt;nowiki&amp;gt;[Jacob&amp;#039;s FFT Converter]&amp;lt;/nowiki&amp;gt;&amp;lt;/u&amp;gt;]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Restoring High Frequency Sounds ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=&lt;/ins&gt;== Restoring High Frequency Sounds &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=&lt;/ins&gt;==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Using this algorithm bounds you to the frequencies accessible by the 8 bit sine, which will often result in high frequencies getting cut off, making things sound muffled and certain syllables will be difficult to hear.  It is possible to get around this limitation and more accurately reproduce high frequency sounds in the sequencer.  In order to do this, you must first follow the instructions in the paragraph above as normal, except you should use a BPM that is a multiple of 4.  After that, select all of the notes and change them to 8 Bit Triangle.  Open the console and run this command: setDetune(13,2400) .  This makes all 8 Bit Sine notes sound 2 octaves higher than they are.  Next, open your sound file in an audio editor such as audacity.  Slow down the sound to 25% of its original speed, and make sure you do not have any setting enabled which preserves the pitch of the sound.  In audacity, this can be done by clicking the drop down menu next to the audio track, and changing the &amp;quot;rate&amp;quot; to a quarter of itself.  The purpose of this is to bring high frequency data down into the range which can be detected by the FFT Converter.  Return to the sequencer and set the sequence&amp;#039;s tempo to a quarter of itself.  Run Jacob&amp;#039;s FFT Converter in the console as before, this time importing the slowed down version of the audio.  Once it is finished, change the tempo back to normal.  You should have the original conversion in 8 Bit Triangle, and a different with more high frequencies in 8 bit sine.  They should completely overlap and sync up, creating a clearer sound.  Volume and EQ of the Sine and Triangle should be adjusted to your taste.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Using this algorithm bounds you to the frequencies accessible by the 8 bit sine, which will often result in high frequencies getting cut off, making things sound muffled and certain syllables will be difficult to hear.  It is possible to get around this limitation and more accurately reproduce high frequency sounds in the sequencer.  In order to do this, you must first follow the instructions in the paragraph above as normal, except you should use a BPM that is a multiple of 4.  After that, select all of the notes and change them to 8 Bit Triangle.  Open the console and run this command: setDetune(13,2400) .  This makes all 8 Bit Sine notes sound 2 octaves higher than they are.  Next, open your sound file in an audio editor such as audacity.  Slow down the sound to 25% of its original speed, and make sure you do not have any setting enabled which preserves the pitch of the sound.  In audacity, this can be done by clicking the drop down menu next to the audio track, and changing the &amp;quot;rate&amp;quot; to a quarter of itself.  The purpose of this is to bring high frequency data down into the range which can be detected by the FFT Converter.  Return to the sequencer and set the sequence&amp;#039;s tempo to a quarter of itself.  Run Jacob&amp;#039;s FFT Converter in the console as before, this time importing the slowed down version of the audio.  Once it is finished, change the tempo back to normal.  You should have the original conversion in 8 Bit Triangle, and a different with more high frequencies in 8 bit sine.  They should completely overlap and sync up, creating a clearer sound.  Volume and EQ of the Sine and Triangle should be adjusted to your taste.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:User experience]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:User experience]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Liam</name></author>
	</entry>
	<entry>
		<id>https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=567&amp;oldid=prev</id>
		<title>Benvisions at 01:52, 28 January 2023</title>
		<link rel="alternate" type="text/html" href="https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=567&amp;oldid=prev"/>
		<updated>2023-01-28T01:52:23Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:52, 27 January 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l12&quot;&gt;Line 12:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 12:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Restoring High Frequency Sounds ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Restoring High Frequency Sounds ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Using this algorithm bounds you to the frequencies accessible by the 8 bit sine, which will often result in high frequencies getting cut off, making things sound muffled and certain syllables will be difficult to hear.  It is possible to get around this limitation and more accurately reproduce high frequency sounds in the sequencer.  In order to do this, you must first follow the instructions in the paragraph above as normal, except you should use a BPM that is a multiple of 4.  After that, select all of the notes and change them to 8 Bit Triangle.  Open the console and run this command: setDetune(13,2400) .  This makes all 8 Bit Sine notes sound 2 octaves higher than they are.  Next, open your sound file in an audio editor such as audacity.  Slow down the sound to 25% of its original speed, and make sure you do not have any setting enabled which preserves the pitch of the sound.  In audacity, this can be done by clicking the drop down menu next to the audio track, and changing the &amp;quot;rate&amp;quot; to a quarter of itself.  The purpose of this is to bring high frequency data down into the range which can be detected by the FFT Converter.  Return to the sequencer and set the sequence&amp;#039;s tempo to a quarter of itself.  Run Jacob&amp;#039;s FFT Converter in the console as before, this time importing the slowed down version of the audio.  Once it is finished, change the tempo back to normal.  You should have the original conversion in 8 Bit Triangle, and a different with more high frequencies in 8 bit sine.  They should completely overlap and sync up, creating a clearer sound.  Volume and EQ of the Sine and Triangle should be adjusted to your taste.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Using this algorithm bounds you to the frequencies accessible by the 8 bit sine, which will often result in high frequencies getting cut off, making things sound muffled and certain syllables will be difficult to hear.  It is possible to get around this limitation and more accurately reproduce high frequency sounds in the sequencer.  In order to do this, you must first follow the instructions in the paragraph above as normal, except you should use a BPM that is a multiple of 4.  After that, select all of the notes and change them to 8 Bit Triangle.  Open the console and run this command: setDetune(13,2400) .  This makes all 8 Bit Sine notes sound 2 octaves higher than they are.  Next, open your sound file in an audio editor such as audacity.  Slow down the sound to 25% of its original speed, and make sure you do not have any setting enabled which preserves the pitch of the sound.  In audacity, this can be done by clicking the drop down menu next to the audio track, and changing the &amp;quot;rate&amp;quot; to a quarter of itself.  The purpose of this is to bring high frequency data down into the range which can be detected by the FFT Converter.  Return to the sequencer and set the sequence&amp;#039;s tempo to a quarter of itself.  Run Jacob&amp;#039;s FFT Converter in the console as before, this time importing the slowed down version of the audio.  Once it is finished, change the tempo back to normal.  You should have the original conversion in 8 Bit Triangle, and a different with more high frequencies in 8 bit sine.  They should completely overlap and sync up, creating a clearer sound.  Volume and EQ of the Sine and Triangle should be adjusted to your taste.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:User experience]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Benvisions</name></author>
	</entry>
	<entry>
		<id>https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=117&amp;oldid=prev</id>
		<title>Cool172: wrote page about 1 of the fft converters os has to offer</title>
		<link rel="alternate" type="text/html" href="https://onlinesequencer.net/w/index.php?title=Vocal_synthesis_using_sine&amp;diff=117&amp;oldid=prev"/>
		<updated>2023-01-01T23:44:14Z</updated>

		<summary type="html">&lt;p&gt;wrote page about 1 of the fft converters os has to offer&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;One of the key limitations of Online Sequencer is the inability to include audio from any outside source.  One way to get around this is by using a script which reconstructs any sound using 8 Bit Sine.  The results often have enough fidelity to discern lyrics, or the timbre of an instrument, depending on which FFT algorithm is used.  This method creates lots of notes, and requires a fast computer to both create and play back these sequences.&lt;br /&gt;
&lt;br /&gt;
== Purposes ==&lt;br /&gt;
FFT scripts for Online sequencer allow any sound to be imported in to the sequencer, and saved for others to listen to, or be accessed later (unlike the add audio track feature, which is just for transcribing).  Simpler sounds work best, like someone talking, or a clear sound effect.  More complex and busy sounds like a whole song, with many parts and layers, usually dont work as well, but can still produce usable results.&lt;br /&gt;
&lt;br /&gt;
== Tutorial ==&lt;br /&gt;
Below is a script that can be used by copying and pasting it into the console on the sequencer.  Press F12 to access the console, then click in the box.  Once you see a blinking cursor, paste the script in.  It will ask you to upload an audio file.  MP3, WAV, and OGG are accepted.  This script should function the same regardless of the level of the signal in your file, and with mono and stereo files (final output will be mono).  It will generate 8 Bit Sine notes corresponding to the frequencies present in your file, with time resolution being equal to 1/16 grid at whatever tempo you have set.  Less notes will be placed if a slower tempo is used, but time resolution will suffer.  For most purposes, 110 BPM is fine, but it can be helpful to match the sequences BPM with that of the file you intend to upload (only if you are uploading a song) or to not change the BPM at all if you are incorporating this into an existing sequence.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/document/d/1zGu4K8rJ6Uo0TCnnGYUzbV96ogTLS3pwL1sZhYT3jKc/edit?usp=sharing &amp;lt;u&amp;gt;&amp;lt;nowiki&amp;gt;[Jacob&amp;#039;s FFT Converter]&amp;lt;/nowiki&amp;gt;&amp;lt;/u&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
== Restoring High Frequency Sounds ==&lt;br /&gt;
Using this algorithm bounds you to the frequencies accessible by the 8 bit sine, which will often result in high frequencies getting cut off, making things sound muffled and certain syllables will be difficult to hear.  It is possible to get around this limitation and more accurately reproduce high frequency sounds in the sequencer.  In order to do this, you must first follow the instructions in the paragraph above as normal, except you should use a BPM that is a multiple of 4.  After that, select all of the notes and change them to 8 Bit Triangle.  Open the console and run this command: setDetune(13,2400) .  This makes all 8 Bit Sine notes sound 2 octaves higher than they are.  Next, open your sound file in an audio editor such as audacity.  Slow down the sound to 25% of its original speed, and make sure you do not have any setting enabled which preserves the pitch of the sound.  In audacity, this can be done by clicking the drop down menu next to the audio track, and changing the &amp;quot;rate&amp;quot; to a quarter of itself.  The purpose of this is to bring high frequency data down into the range which can be detected by the FFT Converter.  Return to the sequencer and set the sequence&amp;#039;s tempo to a quarter of itself.  Run Jacob&amp;#039;s FFT Converter in the console as before, this time importing the slowed down version of the audio.  Once it is finished, change the tempo back to normal.  You should have the original conversion in 8 Bit Triangle, and a different with more high frequencies in 8 bit sine.  They should completely overlap and sync up, creating a clearer sound.  Volume and EQ of the Sine and Triangle should be adjusted to your taste.&lt;/div&gt;</summary>
		<author><name>Cool172</name></author>
	</entry>
</feed>