- Firefox. Sync
- Chrome. Sync
- MSOffice / LibreOffice
- GVim / Notepad++
- Reaper
| import array | |
| import struct | |
| def float_to_16_bit_pcm(raw_floats): | |
| floats = array.array('f', raw_floats) | |
| samples = [sample * 32767 for sample in floats] | |
| raw_ints = struct.pack("<%dh" % len(samples), *samples) | |
| return raw_ints |
| import matplotlib | |
| matplotlib.use('webagg') | |
| import numpy as np | |
| from scipy.special import binom | |
| import matplotlib.pyplot as plt | |
| from matplotlib.lines import Line2D |
| module Jekyll | |
| class AudioTag < Liquid::Tag | |
| def initialize(tag_name, files, tokens) | |
| super | |
| @files = files | |
| end | |
| def render(context) | |
| HTML << '<audio controls="controls">' | |
| from numpy import linspace, cos, pi, absolute | |
| from numpy.fft import fft, fftfreq, fftshift | |
| import matplotlib.pyplot as plt | |
| # Sampling rate | |
| fs = 64 # Hz | |
| # Time is from 0 to 1 seconds, but leave off the endpoint, so | |
| # that 1.0 seconds is the first sample of the *next* chunk | |
| length = 1 # second |