# Livepeer Docs ## Docs - [Audio To Text](https://na-36-docs-v2.mintlify.app/v1/ai/api-reference/audio-to-text.md): Transcribe audio files to text. - [Image To Image](https://na-36-docs-v2.mintlify.app/v1/ai/api-reference/image-to-image.md): Apply image transformations to a provided image. - [Image To Text](https://na-36-docs-v2.mintlify.app/v1/ai/api-reference/image-to-text.md): Transform image files to text. - [Image To Video](https://na-36-docs-v2.mintlify.app/v1/ai/api-reference/image-to-video.md): Generate a video from a provided image. - [LLM](https://na-36-docs-v2.mintlify.app/v1/ai/api-reference/llm.md): Generate text using a language model. - [Introduction](https://na-36-docs-v2.mintlify.app/v1/ai/api-reference/overview.md): Learn more about Livepeer's AI API. - [Segment Anything 2](https://na-36-docs-v2.mintlify.app/v1/ai/api-reference/segment-anything-2.md): Segment objects in an image. - [Text To Image](https://na-36-docs-v2.mintlify.app/v1/ai/api-reference/text-to-image.md): Generate images from text prompts. - [Text To Speech](https://na-36-docs-v2.mintlify.app/v1/ai/api-reference/text-to-speech.md): Generate a text-to-speech audio file based on the provided text input and speaker description. - [Upscale](https://na-36-docs-v2.mintlify.app/v1/ai/api-reference/upscale.md): Upscale an image by increasing its resolution. - [AI Gateways](https://na-36-docs-v2.mintlify.app/v1/ai/builders/gateways.md) - [Building on Livepeer AI](https://na-36-docs-v2.mintlify.app/v1/ai/builders/get-started.md) - [Showcase](https://na-36-docs-v2.mintlify.app/v1/ai/builders/showcase.md) - [Get Started](https://na-36-docs-v2.mintlify.app/v1/ai/contributors/coming-soon.md) - [Get Started](https://na-36-docs-v2.mintlify.app/v1/ai/gateways/get-started.md) - [Onchain](https://na-36-docs-v2.mintlify.app/v1/ai/gateways/onchain.md) - [Start gateway](https://na-36-docs-v2.mintlify.app/v1/ai/gateways/start-gateway.md) - [What is Livepeer AI?](https://na-36-docs-v2.mintlify.app/v1/ai/introduction.md) - [Attach Remote AI Workers](https://na-36-docs-v2.mintlify.app/v1/ai/orchestrators/ai-worker.md) - [Perform Benchmarking](https://na-36-docs-v2.mintlify.app/v1/ai/orchestrators/benchmarking.md) - [Get Started](https://na-36-docs-v2.mintlify.app/v1/ai/orchestrators/get-started.md) - [Configuring AI Models](https://na-36-docs-v2.mintlify.app/v1/ai/orchestrators/models-config.md) - [Download AI Models](https://na-36-docs-v2.mintlify.app/v1/ai/orchestrators/models-download.md) - [On-chain Setup](https://na-36-docs-v2.mintlify.app/v1/ai/orchestrators/onchain.md) - [Start your AI Orchestrator](https://na-36-docs-v2.mintlify.app/v1/ai/orchestrators/start-orchestrator.md) - [Audio-to-Text](https://na-36-docs-v2.mintlify.app/v1/ai/pipelines/audio-to-text.md) - [Image-to-Image](https://na-36-docs-v2.mintlify.app/v1/ai/pipelines/image-to-image.md) - [Image-to-Text](https://na-36-docs-v2.mintlify.app/v1/ai/pipelines/image-to-text.md) - [Image-to-Video](https://na-36-docs-v2.mintlify.app/v1/ai/pipelines/image-to-video.md) - [LLM](https://na-36-docs-v2.mintlify.app/v1/ai/pipelines/llm.md) - [Overview](https://na-36-docs-v2.mintlify.app/v1/ai/pipelines/overview.md) - [Segment-Anything-2](https://na-36-docs-v2.mintlify.app/v1/ai/pipelines/segment-anything-2.md) - [Text-to-Image](https://na-36-docs-v2.mintlify.app/v1/ai/pipelines/text-to-image.md) - [Text-to-Speech](https://na-36-docs-v2.mintlify.app/v1/ai/pipelines/text-to-speech.md) - [Upscale](https://na-36-docs-v2.mintlify.app/v1/ai/pipelines/upscale.md) - [Go](https://na-36-docs-v2.mintlify.app/v1/ai/sdks/go.md): Learn how to run your first AI inference job using the Livepeer AI Go SDK. - [JavaScript](https://na-36-docs-v2.mintlify.app/v1/ai/sdks/javascript.md): Learn how to run your first AI inference job using the Livepeer AI JS SDK. - [AI SDKs](https://na-36-docs-v2.mintlify.app/v1/ai/sdks/overview.md): Explore developer SDKs for interacting with the Livepeer AI API. - [Python](https://na-36-docs-v2.mintlify.app/v1/ai/sdks/python.md): Learn how to run your first AI inference job using the Livepeer AI Python SDK. - [What's New](https://na-36-docs-v2.mintlify.app/v1/ai/whats-new.md) - [Delete an asset](https://na-36-docs-v2.mintlify.app/v1/api-reference/asset/delete.md) - [Retrieve an asset](https://na-36-docs-v2.mintlify.app/v1/api-reference/asset/get.md) - [Retrieve assets](https://na-36-docs-v2.mintlify.app/v1/api-reference/asset/get-all.md) - [Overview](https://na-36-docs-v2.mintlify.app/v1/api-reference/asset/overview.md): The Assets API is used to create, retrieve, update, delete assets object from pipeline. - [Update an asset](https://na-36-docs-v2.mintlify.app/v1/api-reference/asset/update.md) - [Upload an asset](https://na-36-docs-v2.mintlify.app/v1/api-reference/asset/upload.md): To upload an asset, your first need to request for a direct upload URL and only then actually upload the contents of the asset. \ \ Once you created a upload link, you have 2 options, resumable or direct upload. For a more reliable experience, you should use resumable uploads which will work better… - [Upload asset via URL](https://na-36-docs-v2.mintlify.app/v1/api-reference/asset/upload-via-url.md) - [Audio To Text](https://na-36-docs-v2.mintlify.app/v1/api-reference/generate/audio-to-text.md) - [Image To Image](https://na-36-docs-v2.mintlify.app/v1/api-reference/generate/image-to-image.md) - [Image To Video](https://na-36-docs-v2.mintlify.app/v1/api-reference/generate/image-to-video.md) - [LLM](https://na-36-docs-v2.mintlify.app/v1/api-reference/generate/llm.md) - [Overview](https://na-36-docs-v2.mintlify.app/v1/api-reference/generate/overview.md): The Generate API is used to run generative AI models. - [Segment Anything 2](https://na-36-docs-v2.mintlify.app/v1/api-reference/generate/segment-anything-2.md) - [Text To Image](https://na-36-docs-v2.mintlify.app/v1/api-reference/generate/text-to-image.md) - [Upscale](https://na-36-docs-v2.mintlify.app/v1/api-reference/generate/upscale.md) - [Create a multistream](https://na-36-docs-v2.mintlify.app/v1/api-reference/multistream/create.md) - [Delete a multistream](https://na-36-docs-v2.mintlify.app/v1/api-reference/multistream/delete.md): Make sure to remove any references to the target on existing streams before actually deleting it from the API. - [Retrieve a multistream](https://na-36-docs-v2.mintlify.app/v1/api-reference/multistream/get.md) - [Retrieve all multistreams](https://na-36-docs-v2.mintlify.app/v1/api-reference/multistream/get-all.md) - [Overview](https://na-36-docs-v2.mintlify.app/v1/api-reference/multistream/overview.md): The Multistream target API is used to create, retrieve, update, delete multi-stream targets object from pipeline. - [Update a multistream](https://na-36-docs-v2.mintlify.app/v1/api-reference/multistream/update.md) - [Authentication](https://na-36-docs-v2.mintlify.app/v1/api-reference/overview/authentication.md): Learn more about Livepeer's API. - [Introduction](https://na-36-docs-v2.mintlify.app/v1/api-reference/overview/introduction.md): Learn more about Livepeer's API. - [Retrieve Playback Info](https://na-36-docs-v2.mintlify.app/v1/api-reference/playback/get.md) - [Overview](https://na-36-docs-v2.mintlify.app/v1/api-reference/playback/overview.md): The Playback API is used to retrieve playback object from pipeline. - [Retrieve a session](https://na-36-docs-v2.mintlify.app/v1/api-reference/session/get.md) - [Retrieve all sessions](https://na-36-docs-v2.mintlify.app/v1/api-reference/session/get-all.md) - [Retrieve clips of a session](https://na-36-docs-v2.mintlify.app/v1/api-reference/session/get-clip.md) - [Retrieve recorded sessions](https://na-36-docs-v2.mintlify.app/v1/api-reference/session/get-recording.md) - [Overview](https://na-36-docs-v2.mintlify.app/v1/api-reference/session/overview.md): The Sessions API is used to retrieve sessions object from pipeline. - [Create a signing key](https://na-36-docs-v2.mintlify.app/v1/api-reference/signing-key/create.md): The publicKey is a representation of the public key, encoded as base 64 and is passed as a string, and the privateKey is displayed only on creation. This is the only moment where the client can save the private key, otherwise it will be lost. Remember to decode your string when signing JWTs. Up to… - [Delete a signing key](https://na-36-docs-v2.mintlify.app/v1/api-reference/signing-key/delete.md) - [Retrieve a signing key](https://na-36-docs-v2.mintlify.app/v1/api-reference/signing-key/get.md) - [Retrieve signing keys](https://na-36-docs-v2.mintlify.app/v1/api-reference/signing-key/get-all.md) - [Overview](https://na-36-docs-v2.mintlify.app/v1/api-reference/signing-key/overview.md): The Access control API is used to create, retrieve, update, delete signing keys object from pipeline. - [Update a signing key](https://na-36-docs-v2.mintlify.app/v1/api-reference/signing-key/update.md) - [Add a multistream target](https://na-36-docs-v2.mintlify.app/v1/api-reference/stream/add-multistream-target.md) - [Create a livestream](https://na-36-docs-v2.mintlify.app/v1/api-reference/stream/create.md): The only parameter you are required to set is the name of your stream, but we also highly recommend that you define transcoding profiles parameter that suits your specific broadcasting configuration. \ \ If you do not define transcoding rendition profiles when creating the stream, a default set of p… - [Create a clip](https://na-36-docs-v2.mintlify.app/v1/api-reference/stream/create-clip.md) - [Delete a livestream](https://na-36-docs-v2.mintlify.app/v1/api-reference/stream/delete.md): This will also suspend any active stream sessions, so make sure to wait until the stream has finished. To explicitly interrupt an active session, consider instead updating the suspended field in the stream using the PATCH stream API. - [Remove a multistream target](https://na-36-docs-v2.mintlify.app/v1/api-reference/stream/delete-multistream-target.md) - [Retrieve a livestream](https://na-36-docs-v2.mintlify.app/v1/api-reference/stream/get.md) - [Retrieve all livestreams](https://na-36-docs-v2.mintlify.app/v1/api-reference/stream/get-all.md) - [Retrieve clips of a livestream](https://na-36-docs-v2.mintlify.app/v1/api-reference/stream/get-clip.md) - [Overview](https://na-36-docs-v2.mintlify.app/v1/api-reference/stream/overview.md): The Livestream API is used to create, retrieve, update, delete stream object from pipeline. - [Terminates a livestream](https://na-36-docs-v2.mintlify.app/v1/api-reference/stream/terminate.md): `DELETE /stream/{id}/terminate` can be used to terminate an ongoing session on a live stream. Unlike suspending the stream, it allows the streamer to restart streaming even immediately, but it will force terminate the current session and stop the recording. \ \ A 204 No Content status response indic… - [Update a livestream](https://na-36-docs-v2.mintlify.app/v1/api-reference/stream/update.md) - [Retrieve a task](https://na-36-docs-v2.mintlify.app/v1/api-reference/task/get.md) - [Retrieve tasks](https://na-36-docs-v2.mintlify.app/v1/api-reference/task/get-all.md) - [Overview](https://na-36-docs-v2.mintlify.app/v1/api-reference/task/overview.md): The Tasks API is used to retrieve tasks object from pipeline. - [Transcode a video](https://na-36-docs-v2.mintlify.app/v1/api-reference/transcode/create.md): `POST /transcode` transcodes a video file and uploads the results to the specified storage service. \ \ Transcoding is asynchronous so you will need to check the status of the task in order to determine when transcoding is complete. The `id` field in the response is the unique ID for the transcoding… - [Overview](https://na-36-docs-v2.mintlify.app/v1/api-reference/transcode/overview.md): The Transcode API is used to create transcode object from pipeline. - [Query creator viewership metrics](https://na-36-docs-v2.mintlify.app/v1/api-reference/viewership/get-creators-metrics.md): Requires a proof of ownership to be sent in the request, which for now is just the assetId or streamId parameters (1 of those must be in the query-string). - [Query public total views metrics](https://na-36-docs-v2.mintlify.app/v1/api-reference/viewership/get-public-total-views.md): Allows querying for the public metrics for viewership about a video. This can be called from the frontend with a CORS key, or even unauthenticated. - [Query realtime viewership](https://na-36-docs-v2.mintlify.app/v1/api-reference/viewership/get-realtime-viewership.md): Requires a private (non-CORS) API key to be used. - [Query usage metrics](https://na-36-docs-v2.mintlify.app/v1/api-reference/viewership/get-usage-metrics.md) - [Query viewership metrics](https://na-36-docs-v2.mintlify.app/v1/api-reference/viewership/get-viewership-metrics.md): Requires a private (non-CORS) API key to be used. - [Create a webhook](https://na-36-docs-v2.mintlify.app/v1/api-reference/webhook/create.md): To create a new webhook, you need to make an API call with the events you want to listen for and the URL that will be called when those events occur. - [Delete a webhook](https://na-36-docs-v2.mintlify.app/v1/api-reference/webhook/delete.md) - [Retrieve a webhook](https://na-36-docs-v2.mintlify.app/v1/api-reference/webhook/get.md) - [Retrieve all webhooks](https://na-36-docs-v2.mintlify.app/v1/api-reference/webhook/get-all.md) - [Overview](https://na-36-docs-v2.mintlify.app/v1/api-reference/webhook/overview.md): The Webhooks API is used to create, retrieve, update, delete webhooks object from pipeline. - [Update a webhook](https://na-36-docs-v2.mintlify.app/v1/api-reference/webhook/update.md) - [Bridge LPT to Arbitrum](https://na-36-docs-v2.mintlify.app/v1/delegators/guides/bridge-lpt-to-arbitrum.md) - [Migrate stake to Arbitrum](https://na-36-docs-v2.mintlify.app/v1/delegators/guides/migrate-stake-to-arbitrum.md) - [Yield Calculation on Explorer](https://na-36-docs-v2.mintlify.app/v1/delegators/guides/yield-calculation.md) - [Introduction](https://na-36-docs-v2.mintlify.app/v1/delegators/introduction.md): Explore APIs, guides, and examples - [CLI](https://na-36-docs-v2.mintlify.app/v1/delegators/livepeer-studio-cli.md): Generate a new Livepeer app. - [Quickstart](https://na-36-docs-v2.mintlify.app/v1/delegators/quick-start.md): Learn how to create an API key and start adding live and on-demand video to your app or website! - [Control access using JWTs](https://na-36-docs-v2.mintlify.app/v1/developers/guides/access-control-jwt.md): Learn how to add access control to a content with Livepeer UI Kit, using JWTs - [Control access using webhooks](https://na-36-docs-v2.mintlify.app/v1/developers/guides/access-control-webhooks.md): Learn how to add access control to a content with React, using webhooks - [Clip a livestream](https://na-36-docs-v2.mintlify.app/v1/developers/guides/clip-a-livestream.md): Learn how to create clips from your livestream - [Create a livestream](https://na-36-docs-v2.mintlify.app/v1/developers/guides/create-livestream.md): Learn how to create a livestream - [Upload encrypted assets](https://na-36-docs-v2.mintlify.app/v1/developers/guides/encrypted-asset.md): Learn how to upload and play back an encrypted video asset - [Engagement via API](https://na-36-docs-v2.mintlify.app/v1/developers/guides/get-engagement-analytics-via-api.md): Learn how to check out viewer engagement on Livepeer - [Engagement via Grafana](https://na-36-docs-v2.mintlify.app/v1/developers/guides/get-engagement-analytics-via-grafana.md): Learn how to visualize your engagement metrics with Grafana - [Engagement via Timeplus](https://na-36-docs-v2.mintlify.app/v1/developers/guides/get-engagement-analytics-via-timeplus.md): Learn how to analyze Livepeer video engagement metrics with Timeplus - [Listen to asset events](https://na-36-docs-v2.mintlify.app/v1/developers/guides/listen-to-asset-events.md): Learn how to listen to asset events using Studio webhooks. - [Listen to stream events](https://na-36-docs-v2.mintlify.app/v1/developers/guides/listen-to-stream-events.md): Learn how to listen to stream events using Studio webhooks - [In-browser broadcasting](https://na-36-docs-v2.mintlify.app/v1/developers/guides/livestream-from-browser.md): Learn how to broadcast using WebRTC - [Managing Projects](https://na-36-docs-v2.mintlify.app/v1/developers/guides/managing-projects.md): Explore best practices for managing multiple environments in Livepeer Studio - [Monitor stream health](https://na-36-docs-v2.mintlify.app/v1/developers/guides/monitor-stream-health.md): Learn how to monitor stream metrics on Livepeer - [Set up a multistream](https://na-36-docs-v2.mintlify.app/v1/developers/guides/multistream.md): Learn how to add multistreaming - [Optimize latency](https://na-36-docs-v2.mintlify.app/v1/developers/guides/optimize-latency-of-a-livestream.md): Learn how to optimize latency for your Livepeer Studio workflow. - [Overview](https://na-36-docs-v2.mintlify.app/v1/developers/guides/overview.md): Practical step-by-step guides to help you achieve a specific goal. These guides are designed to help you get started with a specific task or feature. - [Play a livestream](https://na-36-docs-v2.mintlify.app/v1/developers/guides/playback-a-livestream.md): Learn how to use a media player with Livepeer - [Play an asset](https://na-36-docs-v2.mintlify.app/v1/developers/guides/playback-an-asset.md): Learn how to play assets with Livepeer - [Set up and listen for webhooks](https://na-36-docs-v2.mintlify.app/v1/developers/guides/setup-and-listen-to-webhooks.md): Learn how to set up a webhook using Node.js and Ngrok to receive notifications from Livepeer. - [Livestream via OBS](https://na-36-docs-v2.mintlify.app/v1/developers/guides/stream-via-obs.md): Learn how to stream into Livepeer Studio with OBS - [Get a livestream thumbnail](https://na-36-docs-v2.mintlify.app/v1/developers/guides/thumbnails-live.md): Learn how to retrieve thumbnails for a live stream - [Get an asset thumbnail](https://na-36-docs-v2.mintlify.app/v1/developers/guides/thumbnails-vod.md): Learn how to retrieve thumbnails for a video asset - [Transcode with Storj](https://na-36-docs-v2.mintlify.app/v1/developers/guides/transcode-video-storj.md) - [Transcode with W3S](https://na-36-docs-v2.mintlify.app/v1/developers/guides/transcode-video-w3s.md) - [Upload an asset](https://na-36-docs-v2.mintlify.app/v1/developers/guides/upload-video-asset.md): Learn how to upload and play back an asset - [Introduction](https://na-36-docs-v2.mintlify.app/v1/developers/introduction.md): Explore APIs, guides, and examples - [CLI](https://na-36-docs-v2.mintlify.app/v1/developers/livepeer-studio-cli.md): Generate a new Livepeer app. - [Quickstart](https://na-36-docs-v2.mintlify.app/v1/developers/quick-start.md): Learn how to create an API key and start adding live and on-demand video to your app or website! - [Youtube clone with FVM](https://na-36-docs-v2.mintlify.app/v1/developers/tutorials/decentralized-app-with-fvm.md): Learn how to Build a decentralized video application with FVM and Livepeer - [Token gate videos with Lit](https://na-36-docs-v2.mintlify.app/v1/developers/tutorials/token-gate-videos-with-lit.md): Learn how to token gate videos using Livepeer and Lit: A step-by-step tutorial - [Play from 4everland](https://na-36-docs-v2.mintlify.app/v1/developers/tutorials/upload-playback-videos-4everland.md): Learn how to play videos 4everland's IPFS gateway using Livepeer - [Play from Arweave](https://na-36-docs-v2.mintlify.app/v1/developers/tutorials/upload-playback-videos-on-arweave.md): Learn how to upload and stream videos from Arweave using Bundlr and Livepeer - [Play from IPFS](https://na-36-docs-v2.mintlify.app/v1/developers/tutorials/upload-playback-videos-on-ipfs.md): Learn how to upload and play back videos on IPFS using Livepeer - [Docker Install](https://na-36-docs-v2.mintlify.app/v1/gateways/guides/docker-install.md) - [Fund The Livepeer Gateway](https://na-36-docs-v2.mintlify.app/v1/gateways/guides/fund-gateway.md): The following steps will walk you through adding funds to the newly created ETH account. This includes funding the ETH account on Ethereum Mainnet, bridging the funds to Arbritrum's L2 Network, and finally using the Livepeer CLI to allocate the proper deposit and reserve amounts. - [Overview](https://na-36-docs-v2.mintlify.app/v1/gateways/guides/gateway-overview.md): This guide will walk you through the Livepeer Gateway installation and setup. Steps to install for Ubuntu Linux, Docker, and Windows are provided. Choose the environment you want, follow install instructions, then continue to the configuration section. - [Linux Install](https://na-36-docs-v2.mintlify.app/v1/gateways/guides/linux-install.md) - [Playback Content](https://na-36-docs-v2.mintlify.app/v1/gateways/guides/playback-content.md) - [Publish Content](https://na-36-docs-v2.mintlify.app/v1/gateways/guides/publish-content.md) - [Configure Transcoding Options](https://na-36-docs-v2.mintlify.app/v1/gateways/guides/transcoding-options.md): To better control your encoding profiles it is recommended to use a json file to specify the resolution and bitrate for your encoding ladder. - [Windows Install](https://na-36-docs-v2.mintlify.app/v1/gateways/guides/windows-install.md) - [Introduction](https://na-36-docs-v2.mintlify.app/v1/gateways/introduction.md): Explore APIs, guides, and examples - [CLI](https://na-36-docs-v2.mintlify.app/v1/gateways/livepeer-studio-cli.md): Generate a new Livepeer app. - [Quickstart](https://na-36-docs-v2.mintlify.app/v1/gateways/quick-start.md): Learn how to create an API key and start adding live and on-demand video to your app or website! - [Assess concurrent stream](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/assess-capabilities.md) - [Benchmark Transcoding](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/benchmark-transcoding.md) - [Reward Calls](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/configure-reward-calling.md) - [Connect to Arbitrum](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/connect-to-arbitrum.md) - [Dual Mine](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/dual-mine.md) - [Gateway Introspection](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/gateway-introspection.md) - [Get started](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/get-started.md) - [Install Go Livepeer](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/install-go-livepeer.md): Learn how to install go-livepeer and become an orchestrator - [Migrate Stake from Contract](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/migrate-from-contract-wallet.md) - [Migrate to Arbitrum](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/migrate-to-arbitrum.md) - [Monitor Metrics](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/monitor-metrics.md) - [Connect to Transcoders](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/o-t-split.md) - [Set Pricing](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/set-pricing.md) - [Set Session Limits](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/set-session-limits.md) - [Troubleshoot](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/troubleshoot.md) - [Vote on proposals](https://na-36-docs-v2.mintlify.app/v1/orchestrators/guides/vote.md) - [Introduction](https://na-36-docs-v2.mintlify.app/v1/orchestrators/introduction.md): Explore APIs, guides, and examples - [CLI](https://na-36-docs-v2.mintlify.app/v1/orchestrators/livepeer-studio-cli.md): Generate a new Livepeer app. - [Quickstart](https://na-36-docs-v2.mintlify.app/v1/orchestrators/quick-start.md): Learn how to create an API key and start adding live and on-demand video to your app or website! - [API Support Matrix](https://na-36-docs-v2.mintlify.app/v1/references/api-support-matrix.md) - [Awesome Livepeer](https://na-36-docs-v2.mintlify.app/v1/references/awesome-livepeer.md) - [Contract Addresses](https://na-36-docs-v2.mintlify.app/v1/references/contract-addresses.md): Look up current Livepeer protocol contract addresses across supported networks and deployed versions — Arbitrum One (active) and Ethereum Mainnet (legacy). - [Example Applications](https://na-36-docs-v2.mintlify.app/v1/references/example-applications.md): Curated collection of Livepeer example applications and integrations - [Bandwidth Requirements](https://na-36-docs-v2.mintlify.app/v1/references/go-livepeer/bandwidth-requirements.md) - [CLI Reference](https://na-36-docs-v2.mintlify.app/v1/references/go-livepeer/cli-reference.md) - [GPU Support](https://na-36-docs-v2.mintlify.app/v1/references/go-livepeer/gpu-support.md) - [Hardware Requirements](https://na-36-docs-v2.mintlify.app/v1/references/go-livepeer/hardware-requirements.md) - [Prometheus Metrics](https://na-36-docs-v2.mintlify.app/v1/references/go-livepeer/prometheus-metrics.md) - [Livestream](https://na-36-docs-v2.mintlify.app/v1/references/knowledge-base/livestream.md) - [Playback](https://na-36-docs-v2.mintlify.app/v1/references/knowledge-base/playback.md) - [Vod](https://na-36-docs-v2.mintlify.app/v1/references/knowledge-base/vod.md) - [Go](https://na-36-docs-v2.mintlify.app/v1/sdks/go.md): Learn how to create your first stream using the Livepeer Go SDK. - [SDKs](https://na-36-docs-v2.mintlify.app/v1/sdks/introduction.md): Explore developer SDKs, pre-built UI components, and tools for interacting with the Livepeer Studio API. - [JavaScript](https://na-36-docs-v2.mintlify.app/v1/sdks/javascript.md): Learn how to create your first stream using the Livepeer Javascript SDK. - [Python](https://na-36-docs-v2.mintlify.app/v1/sdks/python.md): Learn how to create your first stream using the Livepeer Python SDK. - [Broadcast](https://na-36-docs-v2.mintlify.app/v1/sdks/react/Broadcast.md): A comprehensive example showcasing the integration of various `@livepeer/react/broadcast` components to create a full-featured broadcast interface with controls, settings, and device selection. - [Player](https://na-36-docs-v2.mintlify.app/v1/sdks/react/Player.md): A comprehensive example showcasing the integration of various `@livepeer/react/player` components to create a full-featured player interface with controls and settings. - [Audio](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Audio.md): The `AudioEnabledTrigger` and `AudioEnabledIndicator` components provide controls and visual cues for audio input state during media broadcast. - [Camera](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Camera.md): The `VideoEnabledTrigger` and `VideoEnabledIndicator` components provide gateways with interactive controls and visual cues to manage the video enabled state during a broadcast. - [Container](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Container.md): The `Container` component is the container element for Broadcast. It wraps all other elements and acts as an aspect ratio container by default. - [Controls](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Controls.md): The `Controls` component provides an interactive container for all other broadcast control elements such as `AudioTrigger`, `Fullscreen`, etc. - [Enable](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Enabled.md): The `EnabledTrigger` and `EnabledIndicator` components provide gateways with interactive controls and visual cues to manage the "enabled" state of the broadcast. - [Error](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Error.md): The `ErrorIndicator` component is a visual representation of error states in broadcast based on error types. - [Fullscreen](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Fullscreen.md): The `FullscreenIndicator` and `FullscreenTrigger` components provide visual cues and interactive elements for fullscreen functionality. - [Loading](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Loading.md): The `LoadingIndicator` component is a visual indicator of the loading state of the media. - [Picture in Picture](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/PictureInPicture.md): The `PictureInPictureTrigger` component toggles the picture-in-picture mode. - [Portal](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Portal.md): The `Portal` component allows projection of content into different parts of the DOM. - [Root](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Root.md): The `Broadcast.Root` component is the React Context wrapper for Broadcast. - [Screenshare](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Screenshare.md): The `ScreenshareTrigger` and `ScreenshareIndicator` components provide gateways with controls for managing the screenshare state. - [Source](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Source.md): The `SourceSelect` component provides gateways with a dropdown interface to choose between different media source devices like cameras and microphones. - [Status](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Status.md): The `StatusIndicator` component provides visual cues for the broadcast status. - [Video](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/Video.md): The `Video` component is a container for previewing broadcast video content. - [getIngest](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/get-ingest.md): `getIngest` is a utility function for converting various types of ingest information into a standardized WHIP URL format suitable for broadcasting. - [useBroadcastContext](https://na-36-docs-v2.mintlify.app/v1/sdks/react/broadcast/useBroadcastContext.md): The `useBroadcastContext` hook lets you build custom components which interact directly with the Broadcast state store. - [Getting Started](https://na-36-docs-v2.mintlify.app/v1/sdks/react/getting-started.md): Get started building with Livepeer React - [Broadcast](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/Broadcast.md): The Broadcast component provides an easy way to livestream video or audio. - [LivepeerConfig](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/LivepeerConfig.md): The LivepeerConfig component manages configuration for all hooks using React Context. - [Player](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/Player.md): The Player component provides an easy way to display video or audio. - [useAsset](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/asset/useAsset.md): React Hook for retrieving an asset. - [useAssetMetrics](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/asset/useAssetMetrics.md): React Hook for retrieving metrics for an asset. - [useCreateAsset](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/asset/useCreateAsset.md): React Hook for creating a new asset. - [useUpdateAsset](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/asset/useUpdateAsset.md): React Hook for updating an asset. - [Client](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/client.md): The livepeer Client is a framework agnostic client that manages wallet connection state and configuration, such as: auto-connection, connectors, and ethers providers. - [Application Binary Interface](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/constants/abis.md): All Livepeer ABIs available via import. - [Contract Addresses](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/constants/contract-addresses.md): All contract addresses for the Livepeer protocol. - [Getting Started](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/getting-started.md): Get started building with Livepeer UI Kit! - [usePlaybackInfo](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/playback/usePlaybackInfo.md): React Hook for retrieving playback details for a playback ID. - [useCreateStream](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/stream/useCreateStream.md): React Hook for creating a new stream. - [useStream](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/stream/useStream.md): React Hook for retrieving a stream. - [useStreamSession](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/stream/useStreamSession.md): React Hook for retrieving a stream session. - [useStreamSessions](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/stream/useStreamSessions.md): React Hook for retrieving the stream sessions associated with a stream ID. - [useUpdateStream](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/3.x/stream/useUpdateStream.md): React Hook for updating an stream. - [Migration Guide for 4+](https://na-36-docs-v2.mintlify.app/v1/sdks/react/migration/migration-4.x.md): Migration guide for the 4.0.0 release of Livepeer React. - [Clip](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Clip.md): The `ClipTrigger` component enables users to create clips from live Player content. - [Container](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Container.md): The `Container` component is the container element for the Player. It wraps all other elements and acts as an aspect ratio container by default. - [Controls](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Controls.md): The `Controls` component provides an interactive container for all other media control elements such as `Play`, `Fullscreen`, etc. - [Error](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Error.md): The `ErrorIndicator` component is a visual representation of error states in media playback based on error types. - [Fullscreen](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Fullscreen.md): The `FullscreenIndicator` and `FullscreenTrigger` components provide visual cues and interactive elements for fullscreen functionality. - [Live](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Live.md): The `LiveIndicator` component visually signals the live status of media playback. - [Loading](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Loading.md): The `LoadingIndicator` component is a visual indicator of the loading state of the media. - [Picture in Picture](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/PictureInPicture.md): The `PictureInPictureTrigger` component toggles the picture-in-picture mode. - [Play](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Play.md): The `PlayPauseTrigger` component enables users to toggle playback and the `PlayingIndicator` provides a visual cue for the current playback state. - [Portal](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Portal.md): The `Portal` component allows projection of content into different parts of the DOM. - [Poster](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Poster.md): The `Poster` component displays a visual placeholder for media content prior to playback. - [Playback Speed](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/RateSelect.md): The `RateSelect` and `RateSelectItem` components provide an interface for users to adjust the playback speed of the media. - [Root](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Root.md): The `Player.Root` component is the React Context wrapper for the Player. - [Seek](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Seek.md): The `Seek` and `SeekBuffer` components provide visual elements for seeking through media and displaying buffer status. - [Time](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Time.md): The `Time` component provides a display of the current time, total duration, and progress of the media. - [Video](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Video.md): The `Video` component renders the actual video content and manages various aspects of media playback. - [Video Quality](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/VideoQualitySelect.md): The `VideoQualitySelect` and `VideoQualitySelectItem` components allow viewers to select the desired video quality during media playback. - [Volume](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/Volume.md): The `Volume`, `VolumeIndicator`, and `MuteTrigger` components provide interactive controls for the volume level. - [getSrc](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/get-src.md): `getSrc` is a utility function for parsing various types of playback information and converting them into a standardized format suitable for the Player. - [useMediaContext](https://na-36-docs-v2.mintlify.app/v1/sdks/react/player/useMediaContext.md): The `useMediaContext` hook lets you build custom components which interact directly with the media state store. ## OpenAPI Specs - [gateway.openapi](https://na-36-docs-v2.mintlify.app/api/gateway.openapi.yaml) - [openapi](https://na-36-docs-v2.mintlify.app/api/openapi.yaml) - [studio](https://na-36-docs-v2.mintlify.app/api/studio.yaml) - [cli-http](https://na-36-docs-v2.mintlify.app/api/cli-http.yaml) - [ai-worker](https://na-36-docs-v2.mintlify.app/api/ai-worker.yaml) ## Optional - [Livepeer Studio            ➚](https://livepeer.studio) - [What's New                  ➚](https://livepeer.canny.io/changelog) - [Community                   ➚](https://discord.gg/livepeer) - [Livepeer Studio            ➚](https://livepeer.studio) - [What's New                  ➚](https://livepeer.canny.io/changelog) - [Community                   ➚](https://discord.gg/livepeer) - [Livepeer Studio            ➚](https://livepeer.studio) - [What's New                  ➚](https://livepeer.canny.io/changelog) - [Community                   ➚](https://discord.gg/livepeer) - [Livepeer Studio            ➚](https://livepeer.studio) - [What's New                  ➚](https://livepeer.canny.io/changelog) - [Community                   ➚](https://discord.gg/livepeer)