An SMPTE timecode calculator for video post-production.
- Tape: a running list of timecodes you add and subtract, like an adding-machine tape. Multiply or divide the running total by a number.
- Mixed frame rates: each line can have its own fps. Lines are converted to the tape's fps keeping their real duration, rounded to the nearest frame.
- Frame rates: 23.976, 24, 25, 29.97 (NDF and drop-frame), 30, 48, 50, 59.94 (NDF and drop-frame), 60.
- Tools: IN/OUT duration, fps conversion, and TC ↔ frames ↔ seconds.
- Fast entry: type digits only and they fill from the right, as in an NLE:
1000=00:00:10:00. - Languages: English and Spanish. The app follows the system language. You can change it in Settings (⚙ button or
⌘,/Ctrl+,). - Help: built-in help with the
?button orF1.
- Web: open
web/index.htmlin a browser. No server is needed. - Desktop app (Tauri 2):
npm install(once)npm run dev: runs the app in development modenpm run build: builds the.appand.dmgfor this Mac intosrc-tauri/target/release/bundle/npm run build -- --target universal-apple-darwin: universal build (Apple Silicon and Intel). Needsrustup target add x86_64-apple-darwin aarch64-apple-darwin
Building the desktop app requires Rust and Node.js.
Run npm test (or node --test). Reference cases live in tests/fixtures.json as plain data, so a future native port can check itself against the same values.
Pushing a vX.Y.Z tag makes GitHub Actions build installers for macOS (universal: Apple Silicon and Intel), Windows and Linux, attached to a draft release:
git tag v0.1.0 && git push origin v0.1.0
The installers are not code-signed. On macOS, the first time you open the app, right-click it and choose Open.
web/src/timecode.js: SMPTE core: parsing, formatting, drop-frame, fps conversion. Has no DOM dependency.web/src/tape.js: tape model.web/src/i18n.js: translations (en, es) and help text. To add a language, copy aDICTSblock and add its code toLANGS. A test fails if any language is missing a key.web/src/ui.js,web/src/tools.js: user interface.src-tauri/: Tauri desktop app.
MIT License with Attribution Requirement © 2026 Federico Block. See LICENSE.
You are free to use, copy, modify and distribute this software, including commercially, as long as you:
- keep the copyright notice and license text, and
- give visible credit with the text "Based on Timecode Calc by Federico Block" in your documentation and in your About or credits screen, if you have one.
Because of the attribution requirement, this is a variant of the MIT License, not the standard OSI-approved MIT License.
This software is provided "as is", without warranty of any kind. The author accepts no liability for calculation errors, data loss or any other damage arising from its use. Always double-check results that matter.
Calculadora de timecode SMPTE con una cinta de sumas y restas en varios frame rates (incluido drop-frame) y un panel de herramientas. La interfaz está en español e inglés. Para usarla, abre web/index.html, o compila la app de escritorio con npm install y npm run build.
Licencia MIT con requisito de atribución © 2026 Federico Block: uso libre, incluso comercial, manteniendo el aviso de autoría y mostrando de forma visible «Basado en Timecode Calc de Federico Block» en la documentación y en la pantalla «Acerca de» o de créditos. Se ofrece «tal cual», sin garantías; el autor no se hace responsable de errores ni daños derivados de su uso.