AppLooma Media Push & Pull

Bring streams in. Send streams out.

Pull OBS or a hardware encoder into a channel over RTMP or WHIP, let guests join it live, and push the composited show to up to three RTMP destinations at once. Started and stopped from your server.

AndroidiOSWebFlutterReact Native

friday-show · pipeline

LIVE2.4K

Pull in

OBS / encoder

RTMP or WHIP

Ingest

ingest.applooma.dev

Your channel

host + 2 co-hosts

Push out · up to 3

RTMP CDN

live

Video site

live

Your server

RTMPS

4.6 Mbps1080p · 30 fps

Why teams switch

The hard parts of broadcasting, already solved.

✕The problem

Pros stream from OBS, not a phone

Studio cameras, mixers and overlays live in encoder software.

AppLooma

RTMP and WHIP ingest

Create an ingest, paste the URL and stream key into the encoder, and the feed joins the channel like any host.

✕The problem

Your audience is also on other platforms

Running a separate encoder for every site is fragile and expensive.

AppLooma

Push to up to 3 destinations

One call sends the channel to up to three RTMP or RTMPS endpoints at the same time.

✕The problem

Interactive or big, never both

Sub-second rooms stay small; CDN audiences cannot talk back.

AppLooma

Run both from one channel

Guests and viewers interact in the channel while the same show goes out to your CDN audience.

✕The problem

Mixing the guests yourself

Compositing several cameras into one stream is a project of its own.

AppLooma

Composited for you

Media push composites everyone publishing in the channel into a grid before it leaves.

✕The problem

Viewers starting broadcasts

A control a client can reach is a control anyone can reach.

AppLooma

Driven from your server

Start and stop over REST with your API key and secret. Nothing in the app can start or stop a push.

✕The problem

Recordings on someone else’s disk

Most platforms keep your video and rent the storage back.

AppLooma

Record to your own bucket

Recordings go straight to an S3-compatible bucket you own. We keep no copy.

The pipeline

One channel in the middle. Streams in, streams out.

Pull a professional feed into the channel, let guests join it live, then push the composited show to up to three RTMP destinations and record it to your own bucket.

OBS or a hardware encoder

RTMP ingest

Browser or encoder

WHIP ingest

Your channel

Hosts, co-hosts and the ingest, live

Sub-second to the roomGrid composite

Push, up to 3 targets

Any RTMP or RTMPS endpoint

Recording

To your own S3-compatible bucket

Start and stop from your serverIncluded in every planAudience in the room stays interactive

Media push

pushId EG_7Hk2… · 00:42:00

active
1rtmp://live.cdn-one.example/app/••••
2rtmps://stream.video-site.example:443/rtmp/••••
3rtmp://media.your-server.example/live/••••
grid layout
Add ingestStop push

Easy to integrate

Three REST calls from your server.

1

Create an ingest

POST /v1/streams/ingest with type rtmp or whip returns a URL and stream key for the encoder.

2

Start a push

POST /v1/streams/push with one to three rtmp:// or rtmps:// URLs. You get a pushId back.

3

Stop when done

Stop the push with its id and delete the ingest. Push and pull are included in every plan.

const res = await fetch('https://api.applooma.dev/v1/streams/push', {
method: 'POST',
headers, // x-applooma-key + x-applooma-secret
body: JSON.stringify({
roomName: 'friday-show',
urls: [
'rtmp://live.cdn-one.example/app/KEY',
'rtmps://stream.video-site.example:443/rtmp/KEY',
],
}),
});
const { pushId } = await res.json(); // 201

Features

Everything a broadcast needs.

RTMP CDNlive
Video sitelive
Your RTMP serverlive
3 of 3 destinations

Push to up to 3 targets

Any RTMP or RTMPS endpoint: a CDN, a video site or your own server, all at once from one call.

Encoder settings

ServiceCustom
Serverrtmp://ingest.applooma.dev/x
Stream key••••••••••••

Publishing in your channel

Ingest from encoders

RTMP or WHIP from OBS, hardware encoders or a browser. The feed publishes in the channel like any host.

LIVECDN

Everyone publishing, composited as a grid

Grid compositing

Everyone publishing in the channel is composited into one grid layout before the push leaves.

your-bucket / applooma /

▸friday-show/1757…912.mp4
▸friday-show/1757…118.mp4
▸interview-42/1757…504.mp4

S3, R2, B2, MinIO… we keep no copy

Recording to your bucket

S3, R2, B2, MinIO or your own server; we keep no copy. Recording guide →

POST /v1/streams/push

→ 201 { pushId, destinations: 3 }

POST /v1/streams/push/:id/stop

→ 200 { status: "stopped" }

DELETE /v1/streams/ingest/:id

→ 200 { deleted: true }

Start and stop via the API

Server-side REST with your API key. Stop a push by id and delete an ingest when the show ends.

Interactive

sub-second, chat, gifts

Broadcast

your CDN audience

Interactive and broadcast

Guests and viewers chat, gift and join on stage in the channel while the same show reaches your CDN audience.

Full capability list

What you get, in one SDK.

Pull in

  • RTMP ingest
  • WHIP ingest
  • URL and stream key per ingest
  • Publishes like any host
  • Delete when done

Push out

  • RTMP and RTMPS
  • Up to 3 destinations per push
  • Grid composite of the channel
  • Stop by push id

Recording

  • To your own S3-compatible bucket
  • AWS S3, R2, B2, MinIO
  • recording.complete webhook
  • We keep no copy

Control

  • REST from your server
  • API key and secret
  • No client can start a push
  • Included in every plan
3
push destinations
2
ingest protocols
<1 s
inside the channel
0
copies we keep
3,000
Sandbox minutes to test

Built for

Made for the app you are building.

LIVE2.4K

Ayaan

sent a Rocket

×1

One show, several platforms.

  • Stream from OBS into your app
  • Push the same show to up to 3 destinations
  • Fans in your app still chat and send gifts
  • Record it to your bucket

How to get started

Live in four steps.

Every account gets 3,000 Sandbox minutes to test for a $1 card check. Then pick a fixed monthly plan, with no overage charges.

1

Create a free account

Sign up, verify your email and create a project in the console to get your App ID and API keys.

2

Open a channel

A normal channel with your hosts in it. Nothing about the room changes.

3

Pull in or push out

One REST call from your server creates an ingest or starts a push.

4

Stop when done

Another call ends it. Push and pull are included in every plan.

FAQ

Common questions.

How many destinations can I push to?+

Up to three RTMP or RTMPS URLs per push, for example a CDN, a video site and your own RTMP server.

Which encoders can stream in?+

Anything that speaks RTMP or WHIP: OBS, hardware encoders and browser tools. Create an ingest and you get a URL and stream key.

Can I choose the layout of the pushed stream?+

The push composites everyone publishing in the channel into a grid layout. Custom layouts are not available.

Do you store my streams?+

Push and pull only move the stream. Recording writes to an S3-compatible bucket you own, and we keep no copy.

Can a viewer start or stop a push?+

No. Push, ingest and recording are server-side calls with your API key and secret.

How is it billed?+

Push and pull are included in every plan; you pay for participant minutes. Start with 3,000 Sandbox minutes, then a fixed monthly plan with no overage charges.

Take your show everywhere this week.

3,000 Sandbox minutes to test for a $1 card check.