Orchestrators publish their offerings through the OrchestratorInfo data structure
message OrchestratorInfo {
string transcoder = 1; // Service URI
TicketParams ticket_params = 2; // Payment parameters
PriceInfo price_info = 3; // Pricing information
bytes address = 4; // ETH address
Capabilities capabilities = 5; // Supported features
AuthToken auth_token = 6; // Authentication
repeated HardwareInformation hardware = 7; // Hardware specs
repeated OSInfo storage = 32; // Storage options
repeated PriceInfo capabilities_prices = 33; // AI model pricing
}
Registration Process
Orchestrators register on-chain via the activateOrchestrator endpoint
# Required parameters for registration
-blockRewardCut=5.0
-feeShare=10.0
-pricePerUnit=1000
-pixelsPerUnit=1000000000000
-serviceURI=https://orchestrator.example.com:8935
What is Published
1. Service Capabilities
Orchestrators declare their processing capabilities through the Capabilities system
- Video Transcoding: Format conversion, bitrate adaptation
- AI Processing: Text-to-image, image-to-video, upscaling, etc.
- Live AI: Real-time video-to-video processing
Two-tier pricing structure
- Base Pricing: Per-pixel rates for transcoding (
-pricePerUnit)
- Capability Pricing: Per-model AI pricing (
-maxPricePerCapability)
3. Hardware Specifications
Detailed hardware info for performance matching
type HardwareInformation struct {
Pipeline string // GPU pipeline info
ModelId string // AI model identifier
GpuInfo map[string]*GPUComputeInfo // GPU specifications
}
Discovery Mechanisms
1. Direct Discovery
Gateways specify orchestrators directly
-orchAddr=https://orch1.example.com:8935,https://orch2.example.com:8935
2. Webhook Discovery
Dynamic discovery via external service
-orchWebhookUrl=https://discovery.example.com/orchestrators/portal
3. On-Chain Discovery
Automatic discovery of registered orchestrators
- Queries blockchain for active orchestrators
- Caches results in local database
- Polls for updates periodically
4. Network Capabilities API
RESTful discovery endpoint
GET /getNetworkCapabilities
Returns:
{
"capabilities_names": {...},
"orchestrators": [
{
"address": "0x...",
"localAddress": "0x...",
"orchURI": "https://...",
"capabilities": {...},
"capabilities_prices": [...],
"hardware": [...]
}
]
}
Selection Process
Gateway Selection Logic
Gateways select orchestrators based on a multi-factor scoring algorithm
- Capability Matching: Required features supported
- Price Constraints: Within maximum price limits
- Performance Scores: Historical performance metrics
- Blacklist Filtering: Exclude problematic orchestrators
- Latency Considerations: Network proximity
Selection Algorithm
The discovery system uses a multi-factor scoring algorithm
- Random Factor (
-selectRandFreq): Prevents centralization
- Stake Weight (
-selectStakeWeight): Considers LPT stake
- Price Weight (
-selectPriceWeight): Favors competitive pricing
Marketplace Monitoring
Discovery and monitoring via livepeer_cli
livepeer_cli
# Select "Set broadcast config" to see market rates
# View available orchestrators and pricing
HTTP Endpoints
Real-time marketplace data
/registeredOrchestrators - All on-chain orchestrators
/orchestratorInfo - Specific orchestrator details
/getNetworkCapabilities - Available services and pricing
Last modified on March 16, 2026