Skip to content
INDXR.AI
All docs

Audio & video uploads

Uploads let you transcribe a file you already have — a recorded call, a podcast, an interview — instead of a YouTube link. You pick a file, INDXR sends it to the transcription service, and you get a transcript back in the same formats as everything else. Use this when the audio isn't on YouTube, or when a video is blocked but you have the file.

What you can upload

INDXR accepts nine audio and video formats: MP3, MP4, MPEG, MPGA, M4A, WAV, WEBM, OGG and FLAC. A file can be up to 500 MB and up to 10 hours long. Both limits are checked in the browser before the upload starts and again on the server, so an oversized file is stopped early rather than after a long wait.

Uploads are always transcribed with AI

A YouTube video can carry captions; a raw file can't. So every upload goes through AI transcription — there is no free caption path for uploads. It costs 1 credit per minute of audio, rounded up, minimum 1, and the estimate is shown before you start.

Requires an account

Uploading needs a free account — the uploader only appears once you are signed in.

What happens to your file

Websites normally cap how big a file you can send them, which would block a large recording. To avoid that, your file goes straight to the transcription server instead of passing through the website — so large files work. Once transcription finishes, the temporary file (the copy the server keeps only while it is working) is deleted in the same step — only the transcript text is kept, in your library. Nothing is stored for later: the audio is removed as soon as it is processed.

Sources

  • INDXR (own code)supported formats, 500 MB capVerified against backend/audio_utils.py (SUPPORTED_FORMATS audio_utils.py:18, MAX_FILE_SIZE_MB audio_utils.py:19)
  • INDXR (own code)10-hour cap, upload route, browser + server size checkVerified against backend/main.py (MAX_TRANSCRIPTION_SECONDS main.py:775, upload route main.py:817-922); packages/shared/src/components/free-tool/AudioTab.tsx (AudioTab.tsx:276-282,332,573)
  • INDXR (own code)1 credit/min cost, file deleted after processingVerified against packages/shared/src/lib/pricing.ts (AI_TRANSCRIPTION_PER_MIN); backend/transcription_pipeline.py:710-715 (temp-file cleanup)