Skip to main content
GET
/
media
/
stream
Stream Media
curl --request GET \
  --url https://api.inprocess.world/api/media/stream
"<string>"
This endpoint is public and does not require authentication.

Overview

The Media Stream API enables streaming audio and video content from decentralized storage protocols like Arweave and IPFS. It acts as a proxy that:
  • Converts ar:// and ipfs:// URLs to fetchable gateway URLs
  • Supports HTTP Range requests for seeking within media files
  • Returns proper headers for audio and video players to function correctly

Supported URL Formats

ProtocolFormatExample
Arweavear://ar://abc123xyz...
IPFSipfs://ipfs://QmXyz...
HTTPShttps://https://arweave.net/abc123...

Range Request Support

The endpoint supports HTTP Range headers, allowing media players to seek to specific positions in the file. When a range request is made and supported by the origin:
  • Returns 206 Partial Content status
  • Includes Content-Range header indicating the byte range
  • Enables efficient streaming without downloading the entire file

Example Usage

Basic Audio Request

curl "https://api.inprocess.world/api/media/stream?url=ar://your-arweave-tx-id"

Basic Video Request

curl "https://api.inprocess.world/api/media/stream?url=ipfs://QmYourVideoHash"

With Range Header (for seeking)

curl -H "Range: bytes=0-1023" \
  "https://api.inprocess.world/api/media/stream?url=ar://your-arweave-tx-id"

In an HTML Audio Element

<audio controls>
  <source src="https://api.inprocess.world/api/media/stream?url=ar://your-arweave-tx-id" type="audio/mpeg">
</audio>

In an HTML Video Element

<video controls>
  <source src="https://api.inprocess.world/api/media/stream?url=ipfs://QmYourVideoHash" type="video/mp4">
</video>

Query Parameters

url
string
required

The URL of the media file to stream. Supports Arweave (ar://), IPFS (ipfs://), and HTTPS URLs.

Response

Full media content returned

The response is of type file.