Bar / measure duration
API · /tempo-api
Tempo & BPM API
Musical timing maths as an API — turn a tempo into exact times. The durations endpoint gives the length of every note value (whole down to sixty-fourth, plus dotted and triplet variants) at a given BPM, in milliseconds, in hertz, and in samples at your sample rate. The delay endpoint is the producer's note-to-millisecond tool: the delay and reverb times for 1/1 to 1/32 (straight, dotted and triplet) so time-based effects lock to the tempo. The bar endpoint gives the duration of a bar for any time signature. The convert endpoint turns BPM into milliseconds per beat (and back) and names the Italian tempo marking — Largo, Adagio, Andante, Moderato, Allegro, Presto and the rest. Everything is computed locally and deterministically, so it is instant and private. Ideal for DAWs and music-production tools, drum machines and sequencers, delay and echo plug-ins, metronomes, and audio apps. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 4 endpoints. This is tempo and rhythm timing; for notes, intervals, chords and scales use a music-theory API.
API health
healthy- Uptime
- 100.00%
- Server probes · 24h
- Avg latency
- 84 ms
- Server probes · 24h
- Subscribers
- 3,054
- active
- Total calls
- 70
- last 7 days
Pricing
Pick a tier — billed monthly, cancel anytime.
Free
Free
- 7,735 calls / month
- 2 requests / second
- Hard cap (429 above quota, no overage)
- 7,735 calls/month
- 2 req/sec
- Durations + delay + bar + convert
- No credit card
Starter
€9.25 /month
- 17,250 calls / month
- 8 requests / second
- Hard cap (429 above quota, no overage)
- 17.25k calls/month
- 8 req/sec
- ms / Hz / samples
- Email support
Pro
€29.15 /month
- 223,500 calls / month
- 20 requests / second
- Hard cap (429 above quota, no overage)
- 223.5k calls/month
- 20 req/sec
- DAW / plug-in pipelines
- Priority support
Mega
€67.15 /month
- 1,160,000 calls / month
- 50 requests / second
- Hard cap (429 above quota, no overage)
- 1.16M calls/month
- 50 req/sec
- Platform scale
- Dedicated SLA
Built by
Related APIs
Other APIs with overlapping tags.
Vinyl Record API
Vinyl-record geometry maths as an API, computed locally and deterministically — the playing-time, groove-length and groove-speed numbers a cutting engineer, pressing plant or audio hobbyist works a record out with. The playing-time endpoint gives a side's maximum time = the number of groove turns ÷ the turntable speed, where the turns = the recorded band's radial width ÷ the groove pitch (the spacing between adjacent grooves): a 12-inch LP with ~85 mm of band at a 100 µm pitch holds about 850 turns, so at 33⅓ rpm that is roughly 25 minutes a side — a tighter pitch fits more time but cuts groove amplitude and so loudness and bass, the classic time-versus-level trade. The groove-length endpoint unrolls the spiral: length ≈ turns × the mean circumference (π × the average of the outer and inner diameters), on the order of 400–500 metres for an LP side, the whole of which the stylus traces once. The groove-speed endpoint gives the linear speed under the stylus = 2π × rpm/60 × radius, so the outer grooves of an LP pass at about 50 cm/s but the inner ones only ~20 cm/s — the cause of inner-groove distortion and why engineers place quieter tracks last. Everything is computed locally and deterministically, so it is instant and private. Ideal for record-cutting and mastering tools, hi-fi and collector apps, and audio-engineering calculators. Pure local computation — no key, no third-party service, instant. 3 compute endpoints. For musical note and tempo maths use a music API.
api.oanor.com/vinyl-api
Helmholtz Resonator API
Helmholtz-resonator acoustics as an API, computed locally and deterministically. The frequency endpoint computes the resonant frequency of a Helmholtz resonator — a cavity with a neck, like a bottle or a ported speaker box — from the neck area (or diameter), the neck length and the cavity volume, f = (c/2π)·√(A/(V·L_eff)), adding the acoustic end correction (about 0.85·radius for a flanged end and 0.61·radius for a free end) so a short or open neck resonates lower than its physical length suggests. The design endpoint inverts the relation, V = A·c²/(L_eff·ω²), to give the cavity volume needed to tune a resonator or a muffler chamber to a target frequency. The port-tuning endpoint sizes a bass-reflex (vented loudspeaker) box port in practical audio units — from the box volume in litres and the port diameter in centimetres it gives the tuning frequency for a given port length, or the port length required for a target tuning frequency, using the 0.732·diameter end correction. Core endpoints use SI units; the speed of sound defaults to 343 m/s. Everything is computed locally and deterministically, so it is instant and private. Ideal for audio, loudspeaker-design, musical-instrument, muffler and acoustic-treatment app developers, bass-reflex and resonator tools, and acoustics education. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is Helmholtz resonance; for room reverberation use a reverberation API and for standing waves on strings and in pipes a standing-wave API.
api.oanor.com/helmholtz-api
Sound Level API
Acoustics and decibel maths as an API. The decibel endpoint converts between a linear ratio and decibels, in either the power convention (10·log₁₀) or the amplitude/pressure convention (20·log₁₀), in both directions. The combine endpoint adds sound levels the way real (incoherent) sources combine — by energy summation, so two equal 80 dB sources give 83 dB, not 160 — and can also subtract a known source from a measured total. The distance endpoint applies the inverse-square law to a point source in a free field (−6 dB per doubling of distance) to find the level at a new distance. The wavelength endpoint converts between frequency and wavelength for sound, deriving the speed of sound from the air temperature (or a value you provide). Everything is computed locally and deterministically, so it is instant and private. Ideal for audio engineering and live sound, room and architectural acoustics, noise assessment and environmental monitoring, and physics teaching. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 5 endpoints. This is acoustics maths; for electrical circuits use an Ohm's-law API and for general unit conversion use a unit API.
api.oanor.com/soundlevel-api
SoundCloud API
Read SoundCloud in real time — no login or key needed. Full-text search across everything or specifically tracks, users and playlists; resolve any soundcloud.com URL to its object; and fetch a track's detail and comments, a user's profile, their tracks, playlists, likes, followers and following, a playlist's detail, and the trending charts by genre. Tracks, users and playlists are addressed by numeric id (from search/resolve). The public web client_id is resolved automatically and refreshed on expiry; every call is live (no cache) and returns the upstream SoundCloud shape, paginated with limit + offset. 16 endpoints. Built for music discovery, artist and audience analytics and audio content aggregation. A SoundCloud (creator audio) data API — distinct from the Music API (Deezer commercial catalog). No upstream key, no cache.
api.oanor.com/soundcloud-api
Frequently asked questions
Quick answers about pricing, quotas, and integration.
How do I get an API key for Tempo & BPM API?
What's the rate limit for Tempo & BPM API?
How much does Tempo & BPM API cost?
Can I cancel my subscription anytime?
Is Tempo & BPM API GDPR-compliant?
Pick an endpoint from the list on the left to see its details and try it.
Code snippets
Sign up to get an API key, then call any path under your slug.
curl https://api.oanor.com/tempo-api/SOME_PATH \
-H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/tempo-api/SOME_PATH", {
headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/tempo-api/SOME_PATH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
$response = curl_exec($ch);
import requests
r = requests.get(
"https://api.oanor.com/tempo-api/SOME_PATH",
headers={"x-oanor-key": "oanor_test_..."},
)
print(r.json())
Ratings
Sign in to rate.
No reviews yet.
Discussion
Ask questions, share usage tips, get answers from the provider and other developers. Public — anyone can read.
Sign in to start a thread or reply.
Sign inNew thread
·
-
Provider answer
🔒 This thread is locked — no new replies.
-
·
- No threads yet — start the discussion.
Support
Private 1:1 support with the provider — billing questions, integration issues, account problems. Only you and the provider team can see these threads.
Sign in to open a support ticket.
Sign inOpen new ticket
Describe what you need help with. The provider team gets an email and replies on the ticket page.
-
·
Urgent - No tickets yet for this API.