Skip to main content
This page answers “how does X work?” questions. If something is broken, see Troubleshooting instead. Jump to: General · Video Gateway · AI Gateway

General

Use -gateway. The Livepeer Gateway was previously called the Livepeer Broadcaster, and the old flag name appears throughout community guides, forum threads, and Docker Compose examples written before the rename.
# Legacy — may still be accepted but not canonical
./livepeer -broadcaster -network arbitrum-one-mainnet ...

# Current — use this in all new configs
./livepeer -gateway -network arbitrum-one-mainnet ...
The livepeer_cli tool and some log output still display “Broadcaster” in places that have not been updated. This is cosmetic — the underlying behaviour is unchanged.
It depends on your gateway type:
Gateway typeETH neededLPT needed
Video gateway (on-chain)YesNo
AI gateway (off-chain)NoNo
Dual gatewayYesNo
Clearinghouse-backedNoNo
ETH is required on Arbitrum One (not Ethereum mainnet) for on-chain gateways. LPT is not part of the payment flow for any gateway type — it is a staking token for orchestrators.If you want to run an AI gateway without managing ETH, see Payment Paths.
By default, livepeer sends logs only to stdout. Pipe to both stdout and a file using tee:
./livepeer -gateway [flags] 2>&1 | tee livepeer.log
For Docker deployments, logs are captured automatically by Docker:
docker logs <container_name> --tail 200 --follow
For persistent log retention, configure Docker’s logging driver or use a log aggregation tool (Loki, Datadog, etc.).
Possible for an AI gateway (off-chain, no inbound port requirements beyond your orchestrator addresses). For a video gateway, public accessibility depends on your workload:
  • If you are accepting inbound RTMP streams, port 1935 must be publicly accessible.
  • If you are only pushing streams outward (e.g. re-encoding your own content), NAT is less of a concern.
  • For orchestrator discovery via the Livepeer network, your gateway needs to be publicly reachable at the address it registers.
Home networks with NAT (standard home router) require port forwarding rules for ports 8935 and 1935 to the machine running the gateway. Running a public-facing node at home carries general server security risks — only do so if you are comfortable managing those.
No canonical marketplace exists. Visibility is currently fragmented across Livepeer Explorer, Livepeer Tools, Livepeer Studio, and community forums.This is a documented gap. Discussion on gateway marketplace aggregation is ongoing in the community.

Video Gateway

-maxPricePerUnit sets the maximum price your gateway pays orchestrators per pixel processed — it is not a price you charge your customers.The unit is wei per pixel (not ETH). Common starting values:
FlagValueMeaning
-maxPricePerUnit300Maximum 300 wei per pixel
-pixelsPerUnit1Per 1 pixel
If you set this too high, you overpay orchestrators. If you set it too low, no orchestrators accept your jobs. The community standard starting point is 300 with -pixelsPerUnit 1.The price you charge your customers (if running a commercial gateway service) is entirely separate and managed by your own application layer. See Pricing Strategy.
PortPurposeConfigurable with
8935HTTP gateway API and transcoding jobs-httpAddr
1935RTMP stream ingest-rtmpAddr
5935CLI management API-cliAddr
All three can be changed with the corresponding flags if the defaults conflict with other services on your machine.
# Binary
livepeer_cli -host 127.0.0.1 -http 5935

# Docker
docker exec -it <container_name> livepeer_cli -host <container_hostname> -http 5935
Select “Get node status” and look for BROADCASTER STATS. You need both Deposit and Reserve to be non-zero for job routing to work.Community-recommended minimum for testing: 0.1 ETH total (approximately 0.07 ETH deposit + 0.03 ETH reserve).
Bridging ETH to Arbitrum One transfers it to your wallet address on Arbitrum — but it does not automatically allocate it as a gateway deposit. You must explicitly deposit and reserve via livepeer_cli after the bridge confirms.
livepeer_cli -host 127.0.0.1 -http 5935
# Select: "Deposit broadcasting funds"
# Enter deposit amount and reserve amount
See Fund Your Gateway for the full step-by-step.
Orchestrators set their price per pixel (in wei) and advertise it to gateways. Your gateway’s -maxPricePerUnit is the ceiling you are willing to pay — any orchestrator advertising below your cap is eligible to receive your jobs.Orchestrators may adjust their prices automatically based on gas costs on Arbitrum (the autoAdjustPrice behaviour). During high-gas periods, orchestrator prices rise — you may need to raise -maxPricePerUnit temporarily to keep jobs routing.There is no protocol-fixed price. The market price emerges from supply (orchestrators) and demand (gateways) with the gateway’s maxPrice acting as the ceiling.

AI Gateway

The Livepeer AI gateway binary is not currently available for Windows or macOS (Intel). The AI inference stack requires a Linux environment — the GPU/CUDA toolchain used for AI inference has only been tested and compiled for Linux.Workaround: Use Docker on Linux (or WSL2 on Windows).
docker run \
  --name livepeer_ai_gateway \
  -v ~/.lpData2/:/root/.lpData2 \
  -p 8935:8935 \
  --network host \
  livepeer/go-livepeer:master \
  -datadir /root/.lpData2 \
  -gateway \
  -orchAddr <orchestrator-list> \
  -httpAddr 0.0.0.0:8935 \
  -v 6 \
  -httpIngest
The standard video gateway binary for Windows remains available and unchanged.
No. The off-chain AI gateway requires neither ETH nor LPT. You do not need an Arbitrum connection, a wallet, or any on-chain setup.Off-chain means:
  • No ticket-based payment system
  • No Arbitrum RPC required
  • No -network flag needed
  • Orchestrator payment is managed separately (your arrangement with the orchestrator)
This is the fastest path to running a gateway. If you later want to add on-chain video transcoding alongside AI, that becomes a dual gateway and does require ETH.
PortPurposeConfigurable with
8935HTTP API (video and AI share the same port)-httpAddr
5935CLI management API-cliAddr
Both video and AI endpoints share the same -httpAddr port (default 8935). The -httpIngest flag enables AI pipeline endpoints (/text-to-image, /llm, etc.) on this port. To run separate video and AI Gateway processes on the same machine, set different -httpAddr values for each.
There is currently no unified registry or discovery endpoint listing all AI capabilities across the network.Per-orchestrator query:
curl https://<orchestrator-address>:<port>/getOrchestratorInfo
For finding AI-capable orchestrators to query: ask in Discord #local-gateways — community operators share their endpoints there. Community discussion on a unified discovery mechanism is ongoing.
Gateway operators run AI gateways and expose the inference APIs — the gateway itself is the inference endpoint. Orchestrators running AI inference advertise their AI service URI and capability set.There is currently no formal documented flow for registering a custom pipeline type beyond what go-livepeer supports natively. Running a gateway connected to orchestrators running your custom pipeline is the current approach.This is a documented gap. Check the Livepeer Forum for community discussion on extending pipeline support.

External Resources

The following external resources are useful reference points for pricing, network economics, and AI subnet context.
ResourceLinkWhat it covers
Livepeer Docs — Set Pricingdocs.livepeer.orgHow orchestrators set per-pixel pricing, auto-adjustment
Livepeer Studio Pricinglivepeer.studio/pricingExample commercial gateway pricing tiers
Livepeer WhitepaperGitHub WikiProtocol-level economic model (foundational)
TokenTerminal — Livepeer Feestokenterminal.comNetwork fees and usage-based revenue
Figment — Transcoding Fees Primermedium.comClear per-pixel pricing explanation
Livepeer Pricing ToolGitHubCommunity tool for observing network pricing
Last modified on March 16, 2026