@coderline/alphatab 1.7.0-alpha.1515 → 1.7.0-alpha.1522

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -131,6 +131,8 @@ declare class AlphaSynthBase implements IAlphaSynth {
131
131
  private _notPlayedSamples;
132
132
  private _synthStopping;
133
133
  private _output;
134
+ private _loadedMidiInfo?;
135
+ private _currentPosition;
134
136
  get output(): ISynthOutput;
135
137
  isReady: boolean;
136
138
  get isReadyForPlayback(): boolean;
@@ -149,6 +151,8 @@ declare class AlphaSynthBase implements IAlphaSynth {
149
151
  get playbackSpeed(): number;
150
152
  set playbackSpeed(value: number);
151
153
  protected updatePlaybackSpeed(value: number): void;
154
+ get loadedMidiInfo(): PositionChangedEventArgs | undefined;
155
+ get currentPosition(): PositionChangedEventArgs;
152
156
  get tickPosition(): number;
153
157
  set tickPosition(value: number);
154
158
  get timePosition(): number;
@@ -188,17 +192,33 @@ declare class AlphaSynthBase implements IAlphaSynth {
188
192
  private onSamplesPlayed;
189
193
  protected checkForFinish(): void;
190
194
  private stopOneTimeMidi;
195
+ private createPositionChangedEventArgs;
191
196
  protected updateTimePosition(timePosition: number, isSeek: boolean): void;
197
+ /**
198
+ * @lateinit
199
+ */
192
200
  readonly ready: IEventEmitter;
193
201
  readonly readyForPlayback: IEventEmitter;
194
202
  readonly finished: IEventEmitter;
195
203
  readonly soundFontLoaded: IEventEmitter;
196
204
  readonly soundFontLoadFailed: IEventEmitterOfT<Error>;
205
+ /**
206
+ * @lateinit
207
+ */
197
208
  readonly midiLoaded: IEventEmitterOfT<PositionChangedEventArgs>;
198
209
  readonly midiLoadFailed: IEventEmitterOfT<Error>;
210
+ /**
211
+ * @lateinit
212
+ */
199
213
  readonly stateChanged: IEventEmitterOfT<PlayerStateChangedEventArgs>;
214
+ /**
215
+ * @lateinit
216
+ */
200
217
  readonly positionChanged: IEventEmitterOfT<PositionChangedEventArgs>;
201
218
  readonly midiEventsPlayed: IEventEmitterOfT<MidiEventsPlayedEventArgs>;
219
+ /**
220
+ * @lateinit
221
+ */
202
222
  readonly playbackRangeChanged: IEventEmitterOfT<PlaybackRangeChangedEventArgs>;
203
223
  /* Excluded from this release type: hasSamplesForProgram */
204
224
  /* Excluded from this release type: hasSamplesForPercussion */
@@ -298,11 +318,11 @@ declare class AlphaSynthWebWorkerApi implements IAlphaSynth {
298
318
  private _metronomeVolume;
299
319
  private _countInVolume;
300
320
  private _playbackSpeed;
301
- private _tickPosition;
302
- private _timePosition;
303
321
  private _isLooping;
304
322
  private _playbackRange;
305
323
  private _midiEventsPlayedFilter;
324
+ private _loadedMidiInfo?;
325
+ private _currentPosition;
306
326
  get output(): ISynthOutput;
307
327
  get isReady(): boolean;
308
328
  get isReadyForPlayback(): boolean;
@@ -320,6 +340,8 @@ declare class AlphaSynthWebWorkerApi implements IAlphaSynth {
320
340
  set midiEventsPlayedFilter(value: MidiEventType[]);
321
341
  get playbackSpeed(): number;
322
342
  set playbackSpeed(value: number);
343
+ get loadedMidiInfo(): PositionChangedEventArgs | undefined;
344
+ get currentPosition(): PositionChangedEventArgs;
323
345
  get tickPosition(): number;
324
346
  set tickPosition(value: number);
325
347
  get timePosition(): number;
@@ -458,7 +480,7 @@ export declare class AlphaTabApi extends AlphaTabApiBase<SettingsJson | Settings
458
480
  * });
459
481
  * ```
460
482
  */
461
- soundFontLoad: IEventEmitterOfT<ProgressEventArgs>;
483
+ readonly soundFontLoad: IEventEmitterOfT<ProgressEventArgs>;
462
484
  /**
463
485
  * Triggers a load of the soundfont from the given URL.
464
486
  * @param url The URL from which to load the soundfont
@@ -1305,6 +1327,18 @@ export declare class AlphaTabApiBase<TSettings> {
1305
1327
  */
1306
1328
  get timePosition(): number;
1307
1329
  set timePosition(value: number);
1330
+ /**
1331
+ * The total length of the song in midi ticks.
1332
+ * @category Properties - Player
1333
+ * @since 1.6.2
1334
+ */
1335
+ get endTick(): number;
1336
+ /**
1337
+ * The total length of the song in milliseconds.
1338
+ * @category Properties - Player
1339
+ * @since 1.6.2
1340
+ */
1341
+ get endTime(): number;
1308
1342
  /**
1309
1343
  * The range of the song that should be played.
1310
1344
  * @remarks
@@ -1804,7 +1838,7 @@ export declare class AlphaTabApiBase<TSettings> {
1804
1838
  * ```
1805
1839
  *
1806
1840
  */
1807
- playedBeatChanged: IEventEmitterOfT<Beat>;
1841
+ readonly playedBeatChanged: IEventEmitterOfT<Beat>;
1808
1842
  private onPlayedBeatChanged;
1809
1843
  /**
1810
1844
  * This event is fired when the currently active beats across all tracks change.
@@ -1845,7 +1879,7 @@ export declare class AlphaTabApiBase<TSettings> {
1845
1879
  * ```
1846
1880
  *
1847
1881
  */
1848
- activeBeatsChanged: IEventEmitterOfT<ActiveBeatsChangedEventArgs>;
1882
+ readonly activeBeatsChanged: IEventEmitterOfT<ActiveBeatsChangedEventArgs>;
1849
1883
  private onActiveBeatsChanged;
1850
1884
  private _beatMouseDown;
1851
1885
  private _noteMouseDown;
@@ -1885,7 +1919,7 @@ export declare class AlphaTabApiBase<TSettings> {
1885
1919
  * }
1886
1920
  * ```
1887
1921
  */
1888
- beatMouseDown: IEventEmitterOfT<Beat>;
1922
+ readonly beatMouseDown: IEventEmitterOfT<Beat>;
1889
1923
  /**
1890
1924
  * This event is fired whenever the user moves the mouse over a beat after the user already pressed the button on a beat.
1891
1925
  * @eventProperty
@@ -1920,7 +1954,7 @@ export declare class AlphaTabApiBase<TSettings> {
1920
1954
  * }
1921
1955
  * ```
1922
1956
  */
1923
- beatMouseMove: IEventEmitterOfT<Beat>;
1957
+ readonly beatMouseMove: IEventEmitterOfT<Beat>;
1924
1958
  /**
1925
1959
  * This event is fired whenever the user releases the mouse after a mouse press on a beat.
1926
1960
  * @remarks
@@ -1959,7 +1993,7 @@ export declare class AlphaTabApiBase<TSettings> {
1959
1993
  * }
1960
1994
  * ```
1961
1995
  */
1962
- beatMouseUp: IEventEmitterOfT<Beat | null>;
1996
+ readonly beatMouseUp: IEventEmitterOfT<Beat | null>;
1963
1997
  /**
1964
1998
  * This event is fired whenever a the user presses the mouse button on a note head/number.
1965
1999
  * @remarks
@@ -2000,7 +2034,7 @@ export declare class AlphaTabApiBase<TSettings> {
2000
2034
  * ```
2001
2035
  *
2002
2036
  */
2003
- noteMouseDown: IEventEmitterOfT<Note>;
2037
+ readonly noteMouseDown: IEventEmitterOfT<Note>;
2004
2038
  /**
2005
2039
  * This event is fired whenever the user moves the mouse over a note after the user already pressed the button on a note.
2006
2040
  * @remarks
@@ -2041,7 +2075,7 @@ export declare class AlphaTabApiBase<TSettings> {
2041
2075
  * ```
2042
2076
  *
2043
2077
  */
2044
- noteMouseMove: IEventEmitterOfT<Note>;
2078
+ readonly noteMouseMove: IEventEmitterOfT<Note>;
2045
2079
  /**
2046
2080
  * This event is fired whenever the user releases the mouse after a mouse press on a note.
2047
2081
  * @remarks
@@ -2084,7 +2118,7 @@ export declare class AlphaTabApiBase<TSettings> {
2084
2118
  * ```
2085
2119
  *
2086
2120
  */
2087
- noteMouseUp: IEventEmitterOfT<Note | null>;
2121
+ readonly noteMouseUp: IEventEmitterOfT<Note | null>;
2088
2122
  private get hasCursor();
2089
2123
  private onBeatMouseDown;
2090
2124
  private onNoteMouseDown;
@@ -2135,7 +2169,7 @@ export declare class AlphaTabApiBase<TSettings> {
2135
2169
  * ```
2136
2170
  *
2137
2171
  */
2138
- scoreLoaded: IEventEmitterOfT<Score>;
2172
+ readonly scoreLoaded: IEventEmitterOfT<Score>;
2139
2173
  private onScoreLoaded;
2140
2174
  /**
2141
2175
  * This event is fired when alphaTab was resized and is about to rerender the music notation.
@@ -2183,7 +2217,7 @@ export declare class AlphaTabApiBase<TSettings> {
2183
2217
  * ```
2184
2218
  *
2185
2219
  */
2186
- resize: IEventEmitterOfT<ResizeEventArgs>;
2220
+ readonly resize: IEventEmitterOfT<ResizeEventArgs>;
2187
2221
  private onResize;
2188
2222
  /**
2189
2223
  * This event is fired when the rendering of the whole music sheet is starting.
@@ -2223,7 +2257,7 @@ export declare class AlphaTabApiBase<TSettings> {
2223
2257
  * ```
2224
2258
  *
2225
2259
  */
2226
- renderStarted: IEventEmitterOfT<boolean>;
2260
+ readonly renderStarted: IEventEmitterOfT<boolean>;
2227
2261
  private onRenderStarted;
2228
2262
  /**
2229
2263
  * This event is fired when the rendering of the whole music sheet is finished.
@@ -2264,7 +2298,7 @@ export declare class AlphaTabApiBase<TSettings> {
2264
2298
  * ```
2265
2299
  *
2266
2300
  */
2267
- renderFinished: IEventEmitterOfT<RenderFinishedEventArgs>;
2301
+ readonly renderFinished: IEventEmitterOfT<RenderFinishedEventArgs>;
2268
2302
  private onRenderFinished;
2269
2303
  /**
2270
2304
  * This event is fired when the rendering of the whole music sheet is finished, and all handlers of `renderFinished` ran.
@@ -2308,7 +2342,7 @@ export declare class AlphaTabApiBase<TSettings> {
2308
2342
  * ```
2309
2343
  *
2310
2344
  */
2311
- postRenderFinished: IEventEmitter;
2345
+ readonly postRenderFinished: IEventEmitter;
2312
2346
  private onPostRenderFinished;
2313
2347
  /**
2314
2348
  * This event is fired when an error within alphatab occurred.
@@ -2351,7 +2385,7 @@ export declare class AlphaTabApiBase<TSettings> {
2351
2385
  * ```
2352
2386
  *
2353
2387
  */
2354
- error: IEventEmitterOfT<Error>;
2388
+ readonly error: IEventEmitterOfT<Error>;
2355
2389
  /* Excluded from this release type: onError */
2356
2390
  /**
2357
2391
  * This event is fired when all required data for playback is loaded and ready.
@@ -2529,7 +2563,7 @@ export declare class AlphaTabApiBase<TSettings> {
2529
2563
  * ```
2530
2564
  *
2531
2565
  */
2532
- midiLoad: IEventEmitterOfT<MidiFile>;
2566
+ readonly midiLoad: IEventEmitterOfT<MidiFile>;
2533
2567
  private onMidiLoad;
2534
2568
  /**
2535
2569
  * This event is fired when the Midi file needed for playback was loaded.
@@ -2570,7 +2604,7 @@ export declare class AlphaTabApiBase<TSettings> {
2570
2604
  * ```
2571
2605
  *
2572
2606
  */
2573
- midiLoaded: IEventEmitterOfT<PositionChangedEventArgs>;
2607
+ readonly midiLoaded: IEventEmitterOfT<PositionChangedEventArgs>;
2574
2608
  private onMidiLoaded;
2575
2609
  /**
2576
2610
  * This event is fired when the playback state changed.
@@ -2819,7 +2853,7 @@ export declare class AlphaTabApiBase<TSettings> {
2819
2853
  * ```
2820
2854
  *
2821
2855
  */
2822
- settingsUpdated: IEventEmitter;
2856
+ readonly settingsUpdated: IEventEmitter;
2823
2857
  private onSettingsUpdated;
2824
2858
  /**
2825
2859
  * Loads and lists the available output devices which can be used by the player.
@@ -3055,8 +3089,6 @@ declare class AlphaTexExporter extends ScoreExporter {
3055
3089
  private writeTrackTo;
3056
3090
  private writeStaffTo;
3057
3091
  private writeBarTo;
3058
- private writeTrackMetaTo;
3059
- private writePlaybackInfoTo;
3060
3092
  private writeStaffMetaTo;
3061
3093
  private writeChordTo;
3062
3094
  private writeMasterBarMetaTo;
@@ -3139,6 +3171,7 @@ declare class AlphaTexImporter extends ScoreImporter {
3139
3171
  private parseTrackNameMode;
3140
3172
  private parseTrackNameOrientation;
3141
3173
  private handleStaffMeta;
3174
+ private readTrackInstrument;
3142
3175
  private handleAccidentalMode;
3143
3176
  private makeCurrentStaffPitched;
3144
3177
  /**
@@ -3331,7 +3364,11 @@ declare enum AutomationType {
3331
3364
  /**
3332
3365
  * A sync point for synchronizing the internal time axis with an external audio track.
3333
3366
  */
3334
- SyncPoint = 4
3367
+ SyncPoint = 4,
3368
+ /**
3369
+ * Midi Bank change.
3370
+ */
3371
+ Bank = 4
3335
3372
  }
3336
3373
 
3337
3374
  /**
@@ -8191,6 +8228,14 @@ declare interface IAlphaSynth {
8191
8228
  * Gets or sets the position within the song in milliseconds.
8192
8229
  */
8193
8230
  timePosition: number;
8231
+ /**
8232
+ * The information about the main song loaded (does not account for "one time midis" or "count in").
8233
+ */
8234
+ readonly loadedMidiInfo?: PositionChangedEventArgs;
8235
+ /**
8236
+ * The latest time information of the played song.
8237
+ */
8238
+ readonly currentPosition: PositionChangedEventArgs;
8194
8239
  /**
8195
8240
  * Gets or sets the range of the song that should be played. Set this to null
8196
8241
  * to play the whole song.
@@ -10520,6 +10565,7 @@ declare class MidiFileGenerator {
10520
10565
  generate(): void;
10521
10566
  private generateTrack;
10522
10567
  private addProgramChange;
10568
+ private addBankChange;
10523
10569
  static buildTranspositionPitches(score: Score, settings: Settings): Map<number, number>;
10524
10570
  private generateChannel;
10525
10571
  /**
@@ -10920,6 +10966,7 @@ export declare namespace model {
10920
10966
  GolpeType,
10921
10967
  HarmonicType,
10922
10968
  InstrumentArticulation,
10969
+ TechniqueSymbolPlacement,
10923
10970
  JsonConverter,
10924
10971
  KeySignature,
10925
10972
  KeySignatureType,
@@ -12686,6 +12733,10 @@ declare class PlaybackInformation {
12686
12733
  * Gets or sets the midi program to use.
12687
12734
  */
12688
12735
  program: number;
12736
+ /**
12737
+ * The midi bank to use.
12738
+ */
12739
+ bank: number;
12689
12740
  /**
12690
12741
  * Gets or sets the primary channel for all normal midi events.
12691
12742
  */
@@ -14481,6 +14532,7 @@ export declare class Settings {
14481
14532
  * @target web
14482
14533
  */
14483
14534
  fillFromJson(json: SettingsJson): void;
14535
+ /* Excluded from this release type: handleBackwardsCompatibility */
14484
14536
  }
14485
14537
 
14486
14538
  /**
@@ -15409,6 +15461,10 @@ declare class Track {
15409
15461
  * @json_add addLineBreaks
15410
15462
  */
15411
15463
  lineBreaks?: Set<number>;
15464
+ /**
15465
+ * Gets whether this track is a percussion track.
15466
+ */
15467
+ get isPercussion(): boolean;
15412
15468
  /**
15413
15469
  * Adds a new line break.
15414
15470
  * @param index The index of the bar before which a line break should happen.
@@ -15551,8 +15607,7 @@ declare class Tuning {
15551
15607
  private static _fiveStrings;
15552
15608
  private static _fourStrings;
15553
15609
  private static _defaultTunings;
15554
- static readonly defaultAccidentals: string[];
15555
- static readonly defaultSteps: string[];
15610
+ static readonly noteNames: string[];
15556
15611
  static getTextForTuning(tuning: number, includeOctave: boolean): string;
15557
15612
  static getTextPartsForTuning(tuning: number, octaveShift?: number): string[];
15558
15613
  /**