Login
A   A   A  
welcome

 Album 

米Teen唔鐘意玩現成品,喜歡由零件開始砌。99次失敗唔係問題,最緊要係有1次成功!

米Teen總部設在聖公會白約翰會督中學506室,在午膳後和放學後集會。有興趣參與的同學,請與會長或導師聯絡。

米Teen專頁

街景
2025-09-19 08:06:02
溫度29℃ 濕度83% 氣壓1008.01hPa
2025-09-18 18:41:38
閃電31km (0)
2025-09-18 17:30:47
閃電5km (4)
2025-09-18 17:21:35
閃電5km (13)
2025-09-18 17:20:52
閃電17km (0)
2025-09-18 17:15:51
閃電10km (0)
2025-09-18 17:06:48
閃電10km (0)
2025-09-18 17:04:59
閃電10km (1)
2025-09-18 17:03:59
閃電10km (0)
2025-09-18 17:02:18
閃電10km (3)
2025-09-18 16:58:59
閃電12km (1)

Sine wave generator

icon

Home>ICT>Sine wave ...

Wave file format

A wave file consists of a 44 bytes header and sound wave samples.

data chunk size = number of sample frames * 4 (4 bytes for stereo and 16 bit samples)
file size = 44 + data chunk size
numbers are stored with least significant byte first (little-endian)
[4]-[7] value=file size-8=data chunk size+36
[22]-[23] number of channels, stereo=2
[24]-[27] sampling rate
[28]-[31] byte rate=sampling rate * NumChannels * BitsPerSample/8
[34]-[35] bits per sample, value 16 for 16 bits
[40]-[43] data chunk size
[44]- the sound samples (16 bit signed integer, 2 bytes for the left followed by 2 bytes for the right)

ref: bit rate for 44100Hz 16bit stereo = 1411200bps

Left (Hz):
Right (Hz):
Duration (max 8s):

sampling of a sine wave

A=amplitude
f=frequency of the sine wave
T=period=1/f
R=sampling rate
t=time=i*1/R (i=loop counter)
s=sample=A*sin(2*pi*t/T)
=A*sin(2*pi*f*t)
=A*sin(2*pi*f*i/R)

Unlike many other programming languages, JavaScript numbers are always stored as double precision floating point numbers. 16-bit wave samples are stored as 2's-complement signed integers, ranging from -32768 to 32767 (little-endian). Therefore, negative JavaScript numbers must be converted to 2's complement format before converting to base64 characters.
if (s<0) s=s+65536;

ref: WAVE PCM sound file format

welcome

 Album 

米Teen唔鐘意玩現成品,喜歡由零件開始砌。99次失敗唔係問題,最緊要係有1次成功!

米Teen總部設在聖公會白約翰會督中學506室,在午膳後和放學後集會。有興趣參與的同學,請與會長或導師聯絡。

米Teen專頁

街景
2025-09-19 08:06:02
溫度29℃ 濕度83% 氣壓1008.01hPa
2025-09-18 18:41:38
閃電31km (0)
2025-09-18 17:30:47
閃電5km (4)
2025-09-18 17:21:35
閃電5km (13)
2025-09-18 17:20:52
閃電17km (0)
2025-09-18 17:15:51
閃電10km (0)
2025-09-18 17:06:48
閃電10km (0)
2025-09-18 17:04:59
閃電10km (1)
2025-09-18 17:03:59
閃電10km (0)
2025-09-18 17:02:18
閃電10km (3)
2025-09-18 16:58:59
閃電12km (1)
 ⇧