Skip to content

Commit

Permalink
refactor: replace 'Broadcaster' with 'Gateway'
Browse files Browse the repository at this point in the history
This commit replaces all instances of 'Broadcaster' with 'Gateway' in
accordance with a decision made by the core team. For more details, refer to
the discussion at https://discord.com/channels/423160867534929930/1051963444598943784/1210356864643109004.
  • Loading branch information
rickstaa committed May 16, 2024
1 parent cbe65c9 commit 34bf15b
Show file tree
Hide file tree
Showing 21 changed files with 102 additions and 99 deletions.
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
node_modules
.DS_Store
.DS_Store

# IDEs
.vscode
8 changes: 4 additions & 4 deletions catalyst/deploying-catalyst.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -65,12 +65,12 @@ The easiest way to create a wallet and deposit funds is to use the go-livepeer
node itself along with the `livepeer_cli` command-line tool. Both are
downloadable from the
[go-livepeer releases page on GitHub](https://github.com/livepeer/go-livepeer/releases).
Once you have those binaries, you can boot up a temporary livepeer broadcaster
Once you have those binaries, you can boot up a temporary livepeer gateway
locally:

```
./livepeer \
-broadcaster \
-gateway \
-network arbitrum-one-mainnet \
-ethUrl https://ETH_RPC_PROVIDER_HERE
```
Expand Down Expand Up @@ -116,7 +116,7 @@ interface. You will be shown output something like this:
| LivepeerTokenFaucet Address | 0x0000000000000000000000000000000000000000 |
| FOR REFERENCE - DO NOT SEND TOKENS | |
*------------------------------------*--------------------------------------------*
| Broadcaster Account | YOUR WALLET HERE |
| Gateway Account | YOUR WALLET HERE |
| YOUR WALLET FOR ETH & LPT | |
*------------------------------------*--------------------------------------------*
| LPT Balance | 0 LPTU |
Expand All @@ -129,7 +129,7 @@ interface. You will be shown output something like this:
*------------------------------------*--------------------------------------------*
```

At this point you may deposit your Eth into the "Broadcaster Account" address
At this point you may deposit your Eth into the "Gateway Account" address
provided here. Once that transaction has posted to the Arbitrum One network, you
can then invoke option 11: `Invoke "deposit broadcasting funds" (ETH)`. For
example, if you intend to deposit 0.1 Eth in your deposit and 0.1 Eth in your
Expand Down
2 changes: 1 addition & 1 deletion catalyst/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ hackers to start working on it!
that can then transfer to the hosted version at
[livepeer.studio](https://livepeer.studio) when you're ready to go to
production.
- Bundles a fully-local offchain go-livepeer broadcaster and orchestrator, so
- Bundles a fully-local offchain go-livepeer gateway and orchestrator, so
that you may test transcoding with no external dependencies.

### Current limitations:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
An Orchestrator on the Livepeer network is an entity or node that facilitates
the video processing tasks such as transcoding. Orchestrators provide their
computational resources to assist broadcasters and developers in
computational resources to assist gateways and developers in
transcoding/delivering videos. By running the
[`go-livepeer` client](https://github.com/livepeer/go-livepeer), individuals can
join the Livepeer network as Orchestrators.
Expand Down
2 changes: 1 addition & 1 deletion developers/guides/livestream-from-browser.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -251,7 +251,7 @@ the WHIP spec):

<Info>
The final HTTP DELETE is not needed for our media server, since we detect the
end of broadcast by the lack of incoming packets from the broadcaster.
end of broadcast by the lack of incoming packets from the gateway.
</Info>

```txt WHIP Outline
Expand Down
2 changes: 1 addition & 1 deletion developers/guides/optimize-latency-of-a-livestream.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ HLS (HTTP Live Streaming), initially developed by Apple for iOS devices, serves
video with a series of segmented `.ts` files. It is broadly supported across
many device types and is extremely well-optimized for serving multiple
renditions; these characteristics position HLS as the default choice for many
broadcasters.
gateways.

However, HLS has very high overhead and latency. Specifically, its chunked
segment delivery means that viewers must wait for the current segment to finish
Expand Down
6 changes: 3 additions & 3 deletions mint.json
Original file line number Diff line number Diff line change
Expand Up @@ -227,8 +227,8 @@
"destination": "/orchestrators/guides/migrate-from-contract-wallet"
},
{
"source": "/guides/orchestrating/broadcaster-introspection",
"destination": "/orchestrators/guides/broadcaster-introspection"
"source": "/guides/orchestrating/gateway-introspection",
"destination": "/orchestrators/guides/gateway-introspection"
},
{
"source": "/guides/orchestrating/troubleshoot",
Expand Down Expand Up @@ -488,7 +488,7 @@
"orchestrators/guides/o-t-split",
"orchestrators/guides/migrate-to-arbitrum",
"orchestrators/guides/migrate-from-contract-wallet",
"orchestrators/guides/broadcaster-introspection",
"orchestrators/guides/gateway-introspection",
"orchestrators/guides/troubleshoot"
],
"version": "Orchestrators"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@
---
title: Broadcaster Introspection
title: Gateway Introspection
icon: tower-broadcast
---

We launched a public API to enable Broadcaster introspection. Users of the API
will be able to review the activity inside the Livepeer Broadcaster nodes and
We launched a public API to enable Gateway introspection. Users of the API
will be able to review the activity inside the Livepeer Gateway nodes and
understand the selection algorithms used to assign work to Orchestrator nodes.

This is the initial release of the API, and only a few log lines have been
enabled in the public logs. Orchestrators are encouraged to open pull requests
to enable additional logs, which will be closely reviewed by the Livepeer team.
Additionally, the core Livepeer team will publish more logs from Livepeer
Broadcasters that may aid in understanding the selection algorithms.
Gateways that may aid in understanding the selection algorithms.

This API uses Grafana's Loki for log aggregation. Examples of API usage are
provided below. For more guidance, refer to
[this page](https://grafana.com/docs/loki/v2.4.x/api/#get-lokiapiv1query).

### API usage

- Public logs from Livepeer Broadcasters are available through the public Loki
- Public logs from Livepeer Gateways are available through the public Loki
instance.
- Example queries:

Expand Down
2 changes: 1 addition & 1 deletion orchestrators/guides/migrate-from-contract-wallet.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ This guide is designed to be used in conjunction with the
to support migrating to Arbitrum:

- Orchestrators - Migrate stake and fees
- Broadcasters - Migrate your deposit and reserve
- Gateways - Migrate your deposit and reserve
- Delegators - Migrate undelegated stake

The migration process will transfer ownership of funds (i.e., stake) owned by
Expand Down
2 changes: 1 addition & 1 deletion orchestrators/guides/migrate-to-arbitrum.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -246,7 +246,7 @@ used for mainnet, and it is finding a conflict on `chainId`.
`Set orchestrator config`:

To receive work, you must register your service URI and fees so that
broadcasters can discover your orchestrator.
gateways can discover your orchestrator.

> 6a. Select the following option using `livepeer_cli`:
Expand Down
2 changes: 1 addition & 1 deletion orchestrators/guides/o-t-split.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -61,4 +61,4 @@ The `transcoder` field indicates the IP of the connecting transcoder and the
`capacity` field indicates the number of simultaneous transcoding jobs that the
transcoder can handle. Once the orchestrator has at least one transcoder
connected, it will be able to send transcoding jobs to the transcoder when it
receives a stream from a broadcaster.
receives a stream from a gateway.
10 changes: 5 additions & 5 deletions orchestrators/guides/set-pricing.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@ icon: tag
---

In this guide we'll go over how to set and configure pricing to charge for
transcoding advertised to broadcasters off-chain.
transcoding advertised to gateways off-chain.

# Setting WEI Price
# Setting WEI Price

## Choose a Price

To charge for transcoding orchestrators set a price per pixel denominated in Wei
(1 ETH = 1e18 Wei), advertised to broadcasters off-chain.
(1 ETH = 1e18 Wei), advertised to gateways off-chain.

To get support for setting a price that will allow you to receive work on the
network, contact us on our [Discord](https://discord.gg/uaPhtyrWsF) channel.
Expand Down Expand Up @@ -86,7 +86,7 @@ To set a price in USD, one just needs to add the `USD` suffix to the value provi
Given the price per pixel in USD is going to be a really low number, the recommendation is to also set the `-pixelsPerUnit` flag so a more human-friendly number can be specified on the price per unit. The `-pixelsPerUnit` acts as a denominator on the `-pricePerUnit` and the recommendation is to keep it constant over time, updating only the price per unit as seen fit.
e.g.:
e.g.:
- To set a price of **$4.10 E -13**
Expand All @@ -104,7 +104,7 @@ e.g.:
Notice that the `-pixelsPerUnit` flag supports the exponential notation, so it’s easier to understand the value being set. The `-pricePerUnit` does not support it though, so a standard decimal notation must be used. This is also an incentive to use the `-pixelsPerUnit` value in order to keep the `-pricePerUnit` as an easily readable value.
This feature is also supported by broadcasters, with the `-pixelsPerUnit` flag staying the same, while the `-maxPricePerUnit` should be set instead for the max price. The currency is specified in the same format.
This feature is also supported by gateways, with the `-pixelsPerUnit` flag staying the same, while the `-maxPricePerUnit` should be set instead for the max price. The currency is specified in the same format.
### Advanced
Expand Down
2 changes: 1 addition & 1 deletion orchestrators/guides/set-session-limits.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ this guide to fine tune your configuration:

The **default limit of concurrent sessions is set to 10**. When this limit is
exceeded, the orchestrator returns an error, `OrchestratorCapped`, to the
broadcaster and transcoders and they will stop receiving work from
gateway and transcoders and they will stop receiving work from
orchestrators. The session limit should then be set depending on available
hardware and bandwidth.

Expand Down
14 changes: 7 additions & 7 deletions orchestrators/guides/troubleshoot.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ most common issues that a video miner might encounter.
## OrchestratorCapped error

This error means that your orchestrator has hit its session limit so it is not
longer accepting work from broadcasters. See the
longer accepting work from gateways. See the
[session limit guide](/orchestrators/guides/set-session-limits) for information
on setting the session limit.

Expand Down Expand Up @@ -45,7 +45,7 @@ transcoding completes.

These errors occur when a source video segment with certain properties that
prevent it from being transcoded. There are no actionable steps for an operator
in this scenario since the broadcaster is responsible for sending video segments
in this scenario since the gateway is responsible for sending video segments
that are supported by the Livepeer network.

## My node is still calling the reward claims function and spending gas, even though I have set `reward` to false
Expand All @@ -59,13 +59,13 @@ actions on behalf of your orchestrator if using the same wallet.

## TicketParams expired

This error indicates that the broadcaster sent a payment ticket with too old
parameters. This may be caused by the broadcaster's delay (between getting the
This error indicates that the gateway sent a payment ticket with too old
parameters. This may be caused by the gateway's delay (between getting the
last orchestrator info message and sending the segment) or by the delay in
polling chain blocks (the expiration time is measured in L1 blocks). For more
details please check
[TicketParams expiration time](https://github.com/livepeer/go-livepeer/issues/1343).
There are no actionable steps for an operator, broadcaster will retry a request
There are no actionable steps for an operator, gateway will retry a request
with the updated ticket parameters.

## Error creating Ethereum account manager
Expand Down Expand Up @@ -93,7 +93,7 @@ transcoded in Livepeer.
**What does being ‘publicly accessible’ mean? Can I run a transcoder from
home?**

Orchestrators should be reachable by broadcasters via the public IP and port
Orchestrators should be reachable by gateways via the public IP and port
that is set during registration. The only port that is required to be public is
the one that was set during registration (default 8935). Be aware that there are
many risks to running a public server. Only set up an orchestrator if you are
Expand Down Expand Up @@ -132,7 +132,7 @@ Some orchestrators in the past have used

**What is the service URI? Does this need to be an IP?**

The service registry acts as a discovery mechanism to allow broadcasters to look
The service registry acts as a discovery mechanism to allow gateways to look
up the addresses of orchestrators on the network. Orchestrators register their
service URI by storing it on the blockchain. During registration you are only
asked for your IP:port, but the URI stored on the blockchain in the form of .
Expand Down
12 changes: 6 additions & 6 deletions references/go-livepeer/cli-reference.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ also contain instructions for using flags to enable certain functionality in
- httpAddr: Address to bind for HTTP commands. No default

- serviceAddr: Orchestrator only. Overrides the on-chain serviceURI that
broadcasters can use to contact this node; may be an IP or hostname. No
gateways can use to contact this node; may be an IP or hostname. No
default

- orchAddr: Orchestrator to connect to as a standalone transcoder. No default.
Expand All @@ -54,7 +54,7 @@ also contain instructions for using flags to enable certain functionality in

- transcoder: Set to true to be an transcoder. Default `false`

- broadcaster: Set to true to be an broadcaster. Default `false`
- gateway: Set to true to be an gateway. Default `false`

- orchSecret: Shared secret with the orchestrator as a standalone transcoder or
path to file
Expand All @@ -68,7 +68,7 @@ also contain instructions for using flags to enable certain functionality in
mode only). Default `0.3`

- maxSessions: Maximum number of concurrent transcoding sessions for
Orchestrator, maximum number or RTMP streams for Broadcaster, or maximum
Orchestrator, maximum number or RTMP streams for Gateway, or maximum
capacity for transcoder. Default `10`

- currentManifest: Expose the currently active ManifestID as
Expand Down Expand Up @@ -127,15 +127,15 @@ also contain instructions for using flags to enable certain functionality in
than 0. Error if not set.

- maxPricePerUnit: The maximum transcoding price (in wei) per 'pixelsPerUnit' a
broadcaster is willing to accept. If not set explicitly, broadcaster is
gateway is willing to accept. If not set explicitly, gateway is
willing to accept ANY price. Default `0`

- pixelsPerUnit: Amount of pixels per unit. Set to '> 1' to have smaller price
granularity than 1 wei / pixel. Default `1`

- pricePerBroadcaster: json list of price per broadcaster or path to json config
- pricePerGateway: json list of price per gateway or path to json config
file. Example:
`{"broadcasters":[{"ethaddress":"address1","priceperunit":1000,"pixelsperunit":1},{"ethaddress":"address2","priceperunit":1200,"pixelsperunit":1}]}`
`{"gateways":[{"ethaddress":"address1","priceperunit":1000,"pixelsperunit":1},{"ethaddress":"address2","priceperunit":1200,"pixelsperunit":1}]}`

- autoAdjustPrice: Enable/disable automatic price adjustments based on the
overhead for redeeming tickets. Default `true`
Expand Down
Loading

0 comments on commit 34bf15b

Please sign in to comment.