Flat / Opus hosting

Opus hosting: upload Opus recordings and share a link

Publish finished Opus recordings from your browser or the CLI. Share a listening link for a speech clip or music export without converting the original file.

Checking your upload limits... · Public · Limits

Drop your Opus files here

or choose them from your device.

Select Opus files

What listeners see at your Opus link

The sample is an Ogg Opus file with the .opus extension. Flat opens it with the browser's audio controls when that browser supports the file.

Opus is a lossy codec used for speech and music. Flat serves the completed recording; the codec's use in real-time apps does not make this a live calling service.

A single supported file opens with browser playback controls. Several files open in the explorer, where listeners can choose a recording. Public links need no Flat account. Original downloads remain available.

The exact path /audio-sample.opus serves the original audio. Use the main link for Flat's viewer or the exact file URL with your own player.

Flat's audio viewer displaying an Ogg Opus recording with native playback controls and original-file actions.
audio-sample.opus with Ogg Opus audioView full-size screenshot

How to upload Opus audio and get a link

  1. Prepare your recording

    Export an Ogg Opus file using the bitrate and channel settings suited to your recording. Listen for speech clarity or music artifacts before publishing. Flat does not change the bitrate.

    Opus can also appear in other containers, including WebM. This guide covers .opus files. See the Ogg guide for the distinction between container and codec; renaming a container does not convert it.

  2. Publish from your browser or terminal

    In your browser

    Drop, publish, copy the link.

    Drop your finished recordings into the uploader above, or choose them from your device. Enter your email if signed out, then choose "Publish audio".

    Selected files need unique names and publish at the top level. Use the CLI for folders; the browser uploader does not accept folders or extract ZIPs.

    Go to uploader
    TerminalNode.js 20+

    One command. Files or folders.

    npx -y @getflat/cli deploy ./audio-sample.opus

    Replace the example path with your recording, or pass a folder path for several files. The CLI preserves relative paths and prints the published URL.

  3. Listen before sharing

    Play the Opus file on your listeners' browsers and devices. Check seeking and the full recording before sharing, or provide another export if they cannot decode it.

    Signed-out uploads expire after 1 hour by default. Sign in before expiry to keep them online, or sign in before publishing for no default expiry.

What you can share with Opus hosting

Speech recordings

Share a finished spoken note, lesson, or interview excerpt. Choose your bitrate in the encoder, then check the published file for intelligibility.

Compressed music previews

Publish an Opus listening copy of a track. Listeners can download the original export if they prefer their own player.

Application audio assets

Give a developer a direct URL to an Opus export. They can download and check it in the target application or browser.

Keep a version, or keep an address.

Share this version

Every upload gets its own link. Publishing revised files creates a new link and leaves the earlier version unchanged. Use the version link when someone needs to review a specific upload.

Update files at one address

Use a named onflat.page address or your own domain. Sign in, then publish with the CLI using --domain. Publish revised files with the same domain to point that address to the new upload.

Named addresses are included on Free. Adding your own domain requires a paid plan. The browser uploader does not set up or repoint these addresses.

Opus hosting questions

Is hosting free, and what are the limits?

Yes. Signed-in Free includes 5 MiB per upload, 1 GiB of storage, and 5 GiB of monthly transfer, with no default expiry. The per-upload limit covers all files in that upload. Paid plans raise these limits.

Compare hosting plans and limits

Do readers need a Flat account?

No. Public links open without a Flat account. Anyone with the link can open the uploaded files. Password-protected links also require the visitor password.

Can I password-protect my upload?

Yes. Password protection is available on every plan. Add --password YOUR_PASSWORD to your CLI deploy command. It protects access to the upload and its files, but does not prevent someone with access from saving a copy. The browser uploader creates public uploads.

Set a visitor password

Can I replace files without changing the link?

A version link always refers to its original upload. For same-address updates, use a named address or your own domain. Publish revised files with the same --domain value in the CLI to point that address to the new upload.

What happens when an upload expires?

Flat stops serving it. An expired upload cannot be recovered. Signed-out uploads expire after 1 hour by default. For browser uploads, use the sign-in link shown after publishing. For CLI uploads, run npx -y @getflat/cli login. Complete sign-in before expiry to keep the upload online. If you chose a shorter expiry in the CLI, that deadline stays in place.

Is an Opus file the same as an Ogg file?

Opus is a codec; Ogg is a container. Files ending in .opus normally store Opus audio inside Ogg. An .ogg file may contain Vorbis or another codec instead.

Can Flat record or stream a live Opus call?

No. Export a finished recording first, then upload it. Flat does not provide live call recording, WebRTC sessions, or real-time audio streaming.

Will uploading Opus improve its sound quality?

No. Flat preserves your export. Quality depends on the source and encoding settings. Re-encoding a lossy recording cannot restore detail already discarded.

How large can a Opus preview be?

Flat's built-in viewer previews audio files up to 5 MiB, provided the browser supports the encoding. Your hosting plan may allow larger uploads, but paid plans do not raise this preview limit. Larger recordings remain available at their original URLs for downloading or use with your own compatible player.

Can I embed my Opus recording on a website?

Use a public upload's original audio URL:

<audio controls src="https://YOUR-ADDRESS.onflat.page/audio-sample.opus"></audio>

The generated Flat viewer cannot be embedded in an iframe. Your own player still relies on browser codec support and autoplay rules.

Find the guide for your audio file.

Share your next Opus recording.

Publish the finished audio, check playback, and copy the link.

Publish audio

Free to start · View pricing

Compare all supported audio formats