Skip to content

Commit

Permalink
Merge pull request #988 from nrkno/chore/fix-doc-links
Browse files Browse the repository at this point in the history
  • Loading branch information
jstarpl authored Jul 26, 2023
2 parents 5f0e0b6 + 19e750f commit a72d868
Show file tree
Hide file tree
Showing 22 changed files with 79 additions and 79 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ sidebar_position: 1
Documentation for this page is yet to be written.
:::

[Blueprints](../../user-guide/concepts-and-architecture#blueprints) are programs that run inside Sofie Core and interpret
[Blueprints](../../user-guide/concepts-and-architecture.md#blueprints) are programs that run inside Sofie Core and interpret
data coming in from the Rundowns and transform that into playable elements. They use an API published in [@sofie-automation/blueprints-integration](https://nrkno.github.io/sofie-core/typedoc/modules/_sofie_automation_blueprints_integration.html) library to expose their functionality and communicate with Sofie Core.

Technically, a Blueprint is a JavaScript object, implementing one of the `BlueprintManifestBase` interfaces.
Expand Down
10 changes: 5 additions & 5 deletions packages/documentation/docs/for-developers/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ sidebar_position: 1

The pages below are intended for developers of any of the Sofie-related repos and/or blueprints.

A read-through of the [Concepts & Architectures](../user-guide/concepts-and-architecture) is recommended, before diving too deep into development.
A read-through of the [Concepts & Architectures](../user-guide/concepts-and-architecture.md) is recommended, before diving too deep into development.

* [Libraries](libraries)
* [Contribution Guidelines](contribution-guidelines)
* [For Blueprint Developers](for-blueprint-developers/intro)
* [API Documentation](api-documentation)
- [Libraries](libraries.md)
- [Contribution Guidelines](contribution-guidelines.md)
- [For Blueprint Developers](for-blueprint-developers/intro.md)
- [API Documentation](api-documentation.md)
4 changes: 2 additions & 2 deletions packages/documentation/docs/for-developers/libraries.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@ There are a number of libraries used in the Sofie ecosystem:

There are also a few typings-only libraries that define interfaces between applications:

* [**Blueprints Integration**](https://www.npmjs.com/package/@sofie-automation/blueprints-integration) Defines the interface between [**Blueprints**](../user-guide/concepts-and-architecture#blueprints) and **Sofie Core**.
* [**Timeline State Resolver types**](https://www.npmjs.com/package/timeline-state-resolver-types) Defines the interface between [**Blueprints**](../user-guide/concepts-and-architecture#blueprints) and the timeline that will be fed into **TSR** for playout.
* [**Blueprints Integration**](https://www.npmjs.com/package/@sofie-automation/blueprints-integration) Defines the interface between [**Blueprints**](../user-guide/concepts-and-architecture.md#blueprints) and **Sofie Core**.
* [**Timeline State Resolver types**](https://www.npmjs.com/package/timeline-state-resolver-types) Defines the interface between [**Blueprints**](../user-guide/concepts-and-architecture.md#blueprints) and the timeline that will be fed into **TSR** for playout.

## Other Sofie-related Repositories

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Worker Threads & Locks
---

Starting with v1.40.0 (_[Release 40](/sofie-core/docs/releases#release-40)_), the core logic of Sofie is split across
Starting with v1.40.0 (Release 40), the core logic of Sofie is split across
multiple threads. This has been done to minimise performance bottlenecks such as ingest changes delaying takes. In its
current state, it should not impact deployment of Sofie.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ An AdLib isn't added to the Part in the GUI until it starts playing, instead you

## Views

Being a web-based system, Sofie has a number of customisable, user-facing web [views](features/sofie-views) used for control and monitoring.
Being a web-based system, Sofie has a number of customisable, user-facing web [views](features/sofie-views.md) used for control and monitoring.



Expand Down Expand Up @@ -126,7 +126,7 @@ The Timeline is a collection of timeline-objects, that together form a "target s

The timeline-objects can be programmed to contain relative references to each other, so programming things like _"play this thing right after this other thing"_ is as easy as `{start: { #otherThing.end }}`

The [Playout Gateway](../for-developers/libraries) picks up the timeline from Sofie Core and \(using the [TSR timeline-state-resolver](https://github.com/nrkno/sofie-timeline-state-resolver)\) controls the playout devices to make sure that they actually play what is intended.
The [Playout Gateway](../for-developers/libraries.md) picks up the timeline from Sofie Core and \(using the [TSR timeline-state-resolver](https://github.com/nrkno/sofie-timeline-state-resolver)\) controls the playout devices to make sure that they actually play what is intended.

![Example of 2 objects in a timeline: The #video object, destined to play at a certain time, and #gfx0, destined to start 15 seconds into the video.](/img/docs/main/features/timeline.png)

Expand Down Expand Up @@ -159,7 +159,7 @@ _Sofie Core_ generates the timeline using:
- The [Next:ed Part](#next-point-and-lookahead) and Parts that come after it \(the [Lookahead](#lookahead)\)
- Any [AdLibs](#adlib-pieces) the user has manually selected to play

The [**Playout Gateway**](../for-developers/libraries#gateways) then picks up the new timeline, and pipes it into the [\(TSR\) timeline-state-resolver](https://github.com/nrkno/sofie-timeline-state-resolver) library.
The [**Playout Gateway**](../for-developers/libraries.md#gateways) then picks up the new timeline, and pipes it into the [\(TSR\) timeline-state-resolver](https://github.com/nrkno/sofie-timeline-state-resolver) library.

The TSR then...

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ sidebar_position: 2
# Settings View

:::caution
The settings views are only visible to users with the correct [access level](../features/access-levels)!
The settings views are only visible to users with the correct [access level](../features/access-levels.md)!
:::

Recommended read before diving into the settings: [System, \(Organization\), Studio & Show Style](../concepts-and-architecture#system-organization-studio-and-show-style).
Recommended read before diving into the settings: [System, \(Organization\), Studio & Show Style](../concepts-and-architecture.md#system-organization-studio-and-show-style).

## System

Expand All @@ -34,11 +34,11 @@ This section allows you to add and remove Gateways that are related to this _Stu

### Blueprint Configuration

Sofie allows the Blueprints to expose custom configuration fields that allow the System Administrator to reconfigure how these Blueprints work through the Sofie UI. Here you can change the configuration of the [Studio Blueprint](../concepts-and-architecture#studio-blueprints).
Sofie allows the Blueprints to expose custom configuration fields that allow the System Administrator to reconfigure how these Blueprints work through the Sofie UI. Here you can change the configuration of the [Studio Blueprint](../concepts-and-architecture.md#studio-blueprints).

### Layer Mappings

This section allows you to add, remove and configure how logical device-control will be translated to physical automation control. [Blueprints](../concepts-and-architecture#blueprints) control devices through objects placed on a [Timeline](../concepts-and-architecture#timeline) using logical device identifiers called _Layers_. A layer represents a single aspect of a device that can be controlled at a given time: a video switcher's M/E bus, an audio mixers's fader, an OSC control node, a video server's output channel. Layer Mappings translate these logical identifiers into physical device aspects, for example:
This section allows you to add, remove and configure how logical device-control will be translated to physical automation control. [Blueprints](../concepts-and-architecture.md#blueprints) control devices through objects placed on a [Timeline](../concepts-and-architecture.md#timeline) using logical device identifiers called _Layers_. A layer represents a single aspect of a device that can be controlled at a given time: a video switcher's M/E bus, an audio mixers's fader, an OSC control node, a video server's output channel. Layer Mappings translate these logical identifiers into physical device aspects, for example:

![A sample configuration of a Layer Mapping for the M/E1 Bus of an ATEM switcher](/img/docs/main/features/atem-layer-mapping-example.png)

Expand All @@ -48,7 +48,7 @@ These mappings allow the System Administrator to reconfigure what devices the Bl

#### Route Sets

In order to allow the Producer to reconfigure the automation from the Switchboard in the [Rundown View](../concepts-and-architecture#rundown-view), as well as have some pre-set automation control available for the System Administrator, Sofie has a concept of Route Sets. Route Sets work on top of the Layer Mappings, by configuring sets of [Layer Mappings](settings-view#layer-mappings) that will re-route the control from one device to another, or to disable the automation altogether. These Route Sets are presented to the Producer in the [Switchboard](../concepts-and-architecture#switchboard) panel.
In order to allow the Producer to reconfigure the automation from the Switchboard in the [Rundown View](../concepts-and-architecture.md#rundown-view), as well as have some pre-set automation control available for the System Administrator, Sofie has a concept of Route Sets. Route Sets work on top of the Layer Mappings, by configuring sets of [Layer Mappings](settings-view.md#layer-mappings) that will re-route the control from one device to another, or to disable the automation altogether. These Route Sets are presented to the Producer in the [Switchboard](../concepts-and-architecture.md#switchboard) panel.

A Route Set is essentially a distinct set of Layer Mappings, which can modify the settings already configured by the Layer Mappings, but can be turned On and Off. Called Routes, these can change:

Expand Down Expand Up @@ -91,9 +91,9 @@ The Showstyle contains settings like
:::caution
Please note the difference between _Source Layers_ and _timeline-layers_:

[Pieces](../concepts-and-architecture#piece) are put onto _Source layers_, to group different types of content \(such as a VT or Camera\), they are therefore intended only as something to indicate to the user what is going to be played, not what is actually going to happen on the technical level.
[Pieces](../concepts-and-architecture.md#piece) are put onto _Source layers_, to group different types of content \(such as a VT or Camera\), they are therefore intended only as something to indicate to the user what is going to be played, not what is actually going to happen on the technical level.

[Timeline-objects](../concepts-and-architecture#timeline-object) \(inside of the [Pieces](../concepts-and-architecture#piece)\) are put onto timeline-layers, which are \(through the Mappings in the studio\) mapped to physical devices and outputs.
[Timeline-objects](../concepts-and-architecture.md#timeline-object) \(inside of the [Pieces](../concepts-and-architecture.md#piece)\) are put onto timeline-layers, which are \(through the Mappings in the studio\) mapped to physical devices and outputs.
The exact timeline-layer is never exposed to the user, but instead used on the technical level to control playout.

An example of the difference could be when playing a VT \(that's a Source Layer\), which could involve all of the timeline-layers _video\_player0_, _audio\_fader\_video_, _audio\_fader\_host_ and _mixer\_pgm._
Expand Down
2 changes: 1 addition & 1 deletion packages/documentation/docs/user-guide/features/api.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@ The documentation is minimal at the moment, but the API endpoints are listed by

## DDP – Core Integration

If you're planning to build NodeJS applications that talk to _Sofie Core_, we recommend using the [core-integration](https://github.com/nrkno/sofie-core/tree/master/packages/server-core-integration) library, which exposes a number of callable methods and allows for subscribing to data the same way the [Gateways](../concepts-and-architecture#gateways) do it.
If you're planning to build NodeJS applications that talk to _Sofie Core_, we recommend using the [core-integration](https://github.com/nrkno/sofie-core/tree/master/packages/server-core-integration.md) library, which exposes a number of callable methods and allows for subscribing to data the same way the [Gateways](../concepts-and-architecture.md#gateways) do it.

12 changes: 6 additions & 6 deletions packages/documentation/docs/user-guide/features/prompter.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ sidebar_position: 3

# Prompter

See [Sofie views](sofie-views#prompter-view) for how to access the prompter page.
See [Sofie views](sofie-views.md#prompter-view) for how to access the prompter page.

![Prompter screen before the first Part is taken](/img/docs/main/features/prompter-view.png)

Expand Down Expand Up @@ -40,11 +40,11 @@ The prompter can be controlled by different types of controllers. The control mo
| Query parameter | Description |
| :---------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Default | Controlled by both mouse and keyboard |
| `?mode=mouse` | Controlled by mouse only. [See configuration details](prompter#control-using-mouse-scroll-wheel) |
| `?mode=keyboard` | Controlled by keyboard only. [See configuration details](prompter#control-using-keyboard) |
| `?mode=shuttlekeyboard` | Controlled by a Contour Design ShuttleXpress, X-keys Jog and Shuttle or any compatible, configured as keyboard-ish device. [See configuration details](prompter#control-using-contour-shuttlexpress-or-x-keys) |
| `?mode=pedal` | Controlled by any MIDI device outputting note values between 0 - 127 of CC notes on channel 8. Analogue Expression pedals work well with TRS-USB midi-converters. [See configuration details](prompter#control-using-midi-input-mode-pedal) |
| `?mode=joycon` | Controlled by Nintendo Switch Joycon, using the HTML5 GamePad API. [See configuration details](prompter#control-using-nintendo-joycon-gamepad) |
| `?mode=mouse` | Controlled by mouse only. [See configuration details](prompter.md#control-using-mouse-scroll-wheel) |
| `?mode=keyboard` | Controlled by keyboard only. [See configuration details](prompter.md#control-using-keyboard) |
| `?mode=shuttlekeyboard` | Controlled by a Contour Design ShuttleXpress, X-keys Jog and Shuttle or any compatible, configured as keyboard-ish device. [See configuration details](prompter.md#control-using-contour-shuttlexpress-or-x-keys) |
| `?mode=pedal` | Controlled by any MIDI device outputting note values between 0 - 127 of CC notes on channel 8. Analogue Expression pedals work well with TRS-USB midi-converters. [See configuration details](prompter.md#control-using-midi-input-mode-pedal) |
| `?mode=joycon` | Controlled by Nintendo Switch Joycon, using the HTML5 GamePad API. [See configuration details](prompter.md#control-using-nintendo-joycon-gamepad) |

#### Control using mouse \(scroll wheel\)

Expand Down
Loading

0 comments on commit a72d868

Please sign in to comment.