You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/guides/audio-export.mdx
+10-10Lines changed: 10 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -34,8 +34,8 @@ The audio exporter follows an asynchronous pull pattern:
34
34
To export the audio you follow tree main steps:
35
35
36
36
1. You start a new exporter with [`await api.exportAudio(...)`](/docs/reference/api/exportaudio.mdx).
37
-
2. You call [`exporter.render(<milliseconds>)`](/docs/reference/types/synth/iaudioexporter/render.mdx) to produce a chunk of audio which you can then process further. (repeated until end is reached).
38
-
3. You cleanup the exporter via [`exporter.destroy()`](/docs/reference/types/synth/iaudioexporter/destroy.mdx). The exporter also implements `Disposable` (`IDisposable` for C#, `AutoCloseable` for `Kotlin`) which allows easy cleanup via language features if supported.
37
+
2. You call [`exporter.render(<milliseconds>)`](/docs/reference/types/synth/iaudioexporter#render) to produce a chunk of audio which you can then process further. (repeated until end is reached).
38
+
3. You cleanup the exporter via [`exporter.destroy()`](/docs/reference/types/synth/iaudioexporter#destroy). The exporter also implements `Disposable` (`IDisposable` for C#, `AutoCloseable` for `Kotlin`) which allows easy cleanup via language features if supported.
39
39
40
40
> [!WARNING]
41
41
> The raw audio samples for a whole song can consume quite a huge amount of memory: A calculation example:
@@ -52,14 +52,14 @@ To export the audio you follow tree main steps:
52
52
53
53
The [`AudioExportOptions`](/docs/reference/types/synth/audioexportoptions/index.mdx) allow customizing various aspects of the audio exported:
54
54
55
-
*[`soundFonts`](/docs/reference/types/synth/audioexportoptions/soundfonts.mdx) can be used to customize the soundfonts used during export.
56
-
*[`sampleRate`](/docs/reference/types/synth/audioexportoptions/samplerate.mdx) can be used to customize the sample rate of the exported audio.
57
-
*[`useSyncPoints`](/docs/reference/types/synth/audioexportoptions/usesyncpoints.mdx) controls whether the sync points of the currently loaded song are appled during audio generation.
58
-
*[`masterVolume`](/docs/reference/types/synth/audioexportoptions/mastervolume.mdx) controls the master volume of the generated audio.
59
-
*[`metronomeVolume`](/docs/reference/types/synth/audioexportoptions/metronomevolume.mdx) controls the volume of the metronome ticks. (keep in mind that the use of `useSyncPoints` changes the audio duration, the metronome is aligned with the music notes, not with the synthesized audio)
60
-
*[`playbackRange`](/docs/reference/types/synth/audioexportoptions/playbackrange.mdx) controls the audio range which is exported.
61
-
*[`trackVolume`](/docs/reference/types/synth/audioexportoptions/trackvolume.mdx) controls the volume of every track (percentage-wise to the already configured absolute volume)
62
-
*[`trackTranspositionPitches`](/docs/reference/types/synth/audioexportoptions/tracktranspositionpitches.mdx) controls an additional transposition pitch for the tracks.
55
+
*[`soundFonts`](/docs/reference/types/synth/audioexportoptions#soundfonts) can be used to customize the soundfonts used during export.
56
+
*[`sampleRate`](/docs/reference/types/synth/audioexportoptions#samplerate) can be used to customize the sample rate of the exported audio.
57
+
*[`useSyncPoints`](/docs/reference/types/synth/audioexportoptions#usesyncpoints) controls whether the sync points of the currently loaded song are appled during audio generation.
58
+
*[`masterVolume`](/docs/reference/types/synth/audioexportoptions#mastervolume) controls the master volume of the generated audio.
59
+
*[`metronomeVolume`](/docs/reference/types/synth/audioexportoptions#metronomevolume) controls the volume of the metronome ticks. (keep in mind that the use of `useSyncPoints` changes the audio duration, the metronome is aligned with the music notes, not with the synthesized audio)
60
+
*[`playbackRange`](/docs/reference/types/synth/audioexportoptions#playbackrange) controls the audio range which is exported.
61
+
*[`trackVolume`](/docs/reference/types/synth/audioexportoptions#trackvolume) controls the volume of every track (percentage-wise to the already configured absolute volume)
62
+
*[`trackTranspositionPitches`](/docs/reference/types/synth/audioexportoptions#tracktranspositionpitches) controls an additional transposition pitch for the tracks.
Copy file name to clipboardExpand all lines: docs/guides/formatting-templates.mdx
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,9 +31,9 @@ import {FormattingTemplateSample} from '@site/src/components/FormattingTemplateS
31
31
32
32
The most important parts to know:
33
33
34
-
* The [`style`](/docs/reference/types/model/score/style) on [`alphaTab.model.Score`](/docs/reference/types/model/score) is used to adjust the style of the visual elements.
35
-
* The [`headerAndFooter`](/docs/reference/types/model/scorestyle/headerandfooter) on [`alphaTab.model.ScoreStyle`](/docs/reference/types/model/scorestyle/) is used to adjust the text, visibility and alignment of the header and footer elements.
36
-
* The [`colors`](/docs/reference/types/model/elementstyle/colors) on `alphaTab.model.ScoreStyle` is used to adjust the color of the header and footer elements (and others).
34
+
* The [`style`](/docs/reference/types/model/score#style) on [`alphaTab.model.Score`](/docs/reference/types/model/score) is used to adjust the style of the visual elements.
35
+
* The [`headerAndFooter`](/docs/reference/types/model/scorestyle#headerandfooter) on [`alphaTab.model.ScoreStyle`](/docs/reference/types/model/scorestyle/) is used to adjust the text, visibility and alignment of the header and footer elements.
36
+
* The [`colors`](/docs/reference/types/model/elementstyle#colors) on `alphaTab.model.ScoreStyle` is used to adjust the color of the header and footer elements (and others).
37
37
* The [`alphaTab.model.ScoreSubElement`](/docs/reference/types/model/scoresubelement) defines the possible list of elements to be styled (not all are song info related)
38
38
39
39
The `template` is a string which can have following placeholders which are then replaced with the respective info of the song:
Copy file name to clipboardExpand all lines: docs/reference/_settingsTable.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -37,7 +37,7 @@ import { Signature } from "@site/src/components/Signature";
37
37
</a>
38
38
</td>
39
39
<td>
40
-
Whether in the <Signaturestyle="inline"js={[["identifier","BoundsLookup"]]} /> also the position and area of each individual note is provided.
40
+
Whether in the <Signaturestyle="inline"js={[["identifier","BoundsLookup"]]}>BoundsLookup</Signature> also the position and area of each individual note is provided.
This event is fired when the currently active beats across all tracks change. Unlike the <Signaturestyle="inline"js={[["identifier","playedBeatChanged","/docs/reference/types/alphatabapibase/playedbeatchanged"]]} /> event this event contains the beats of all tracks and voices independent of them being rendered.
12
+
This event is fired when the currently active beats across all tracks change. Unlike the <Signaturestyle="inline"js={[["identifier","playedBeatChanged","/docs/reference/types/alphatabapibase#playedbeatchanged"]]}>playedBeatChanged</Signature> event this event contains the beats of all tracks and voices independent of them being rendered.
The actual player mode which is currently active. Allows determining whether a backing track or the synthesizer is active in case automatic detection is enabled.
This event is fired whenever the user releases the mouse after a mouse press on a beat. This event is fired regardless of whether the mouse was released on a beat.
12
+
This event is fired whenever the user releases the mouse after a mouse press on a beat. This event is fired regardless of whether the mouse was released on a beat.
15
13
The parameter is null if the mouse was released somewhere beside the beat.
16
14
17
15
<Signaturestyle="block"
@@ -32,28 +30,28 @@ The parameter is null if the mouse was released somewhere beside the beat.
The tick cache allowing lookup of midi ticks to beats. In older versions of alphaTab you can access the `boundsLookup` via <Signaturestyle="inline"js={[["identifier","boundsLookup","/docs/reference/types/rendering/iscorerenderer/boundslookup"]]} /> on <Signaturestyle="inline"js={[["identifier","renderer","/docs/reference/types/alphatabapibase/renderer"]]} />.
16
-
17
-
After the rendering completed alphaTab exposes via this lookup the location of the individual
18
-
notation elements. The lookup provides fast access to the bars and beats at a given location.
19
-
If the <Signaturestyle="inline"js={[["identifier","CoreSettings.includeNoteBounds","/docs/reference/settings/core/includenotebounds"]]} /> option was activated also the location of the individual notes can be obtained.
20
-
21
-
The property contains a `BoundsLookup` instance which follows a hierarchical structure that represents
22
-
the tree of rendered elements.
23
-
24
-
The hierarchy is: `staffSystems > bars(1) > bars(2) > beats > notes`
25
-
26
-
*`staffSystems` - Represent the bounds of the individual systems ("rows") where staves are contained.
27
-
*`bars(1)` - Represent the bounds of all bars for a particular master bar across all tracks.
28
-
*`bars(2)` - Represent the bounds of an individual bar of a track. The bounds on y-axis span the region of the staff and notes might exceed this bounds.
29
-
*`beats` - Represent the bounds of the individual beats within a track. The bounds on y-axis are equal to the bar bounds.
30
-
*`notes` - Represent the bounds of the individual note heads/numbers within a track.
31
-
32
-
Each bounds hierarchy have a `visualBounds` and `realBounds`.
33
-
34
-
*`visualBounds` - Represent the area covering all visually visible elements
35
-
*`realBounds` - Represents the actual bounds of the elements in this beat including whitespace areas.
36
-
*`noteHeadBounds` (only on `notes` level) - Represents the area of the note heads or number based on the staff
37
-
13
+
The tick cache allowing lookup of midi ticks to beats. In older versions of alphaTab you can access the `boundsLookup` via <Signaturestyle="inline"js={[["identifier","boundsLookup","/docs/reference/types/rendering/iscorerenderer#boundslookup"]]}>boundsLookup</Signature> on <Signaturestyle="inline"js={[["identifier","renderer","/docs/reference/types/alphatabapibase#renderer"]]}>renderer</Signature> .
14
+
15
+
After the rendering completed alphaTab exposes via this lookup the location of the individual
16
+
notation elements. The lookup provides fast access to the bars and beats at a given location.
17
+
If the <Signaturestyle="inline"js={[["identifier","CoreSettings.includeNoteBounds","/docs/reference/settings/core/includenotebounds"]]}>CoreSettings.includeNoteBounds</Signature> option was activated also the location of the individual notes can be obtained.
18
+
19
+
The property contains a `BoundsLookup` instance which follows a hierarchical structure that represents
20
+
the tree of rendered elements.
21
+
22
+
The hierarchy is: `staffSystems > bars(1) > bars(2) > beats > notes`
23
+
24
+
*`staffSystems` - Represent the bounds of the individual systems ("rows") where staves are contained.
25
+
*`bars(1)` - Represent the bounds of all bars for a particular master bar across all tracks.
26
+
*`bars(2)` - Represent the bounds of an individual bar of a track. The bounds on y-axis span the region of the staff and notes might exceed this bounds.
27
+
*`beats` - Represent the bounds of the individual beats within a track. The bounds on y-axis are equal to the bar bounds.
28
+
*`notes` - Represent the bounds of the individual note heads/numbers within a track.
29
+
30
+
Each bounds hierarchy have a `visualBounds` and `realBounds`.
31
+
32
+
*`visualBounds` - Represent the area covering all visually visible elements
33
+
*`realBounds` - Represents the actual bounds of the elements in this beat including whitespace areas.
34
+
*`noteHeadBounds` (only on `notes` level) - Represents the area of the note heads or number based on the staff
35
+
38
36
You can check out the individual sizes and regions.
0 commit comments