Interface IMusicTrackDefinition
Interface representing the definition of a music track.
Namespace: Serenity.MusicPlayer.Application.Interfaces
Assembly: Serenity.MusicPlayer.Application.dll
Syntax
public interface IMusicTrackDefinition : IFoundationSettings
Properties
Artist
Gets the artist of the music track.
Declaration
string Artist { get; }
Property Value
| Type | Description |
|---|---|
| string | The artist as a string. |
AudioClip
Gets the audio clip of the music track.
Declaration
object AudioClip { get; }
Property Value
| Type | Description |
|---|---|
| object | The audio clip as an object. |
AudioClipPath
Gets the audio clip path of the music track.
Declaration
string AudioClipPath { get; }
Property Value
| Type | Description |
|---|---|
| string | The audio clip path as a string. |
EndTime
Gets the loop-out point in seconds. When playback reaches this position a new voice starts the loop from StartTime while the current voice rings out its tail past this point.
Declaration
float EndTime { get; }
Property Value
| Type | Description |
|---|---|
| float | The end time as seconds from the beginning of the clip. |
StartTime
Gets the loop-return point in seconds. When the track is tail-preserving looped, each loop restarts playback from this position instead of the beginning, so the intro is heard only once.
Declaration
float StartTime { get; }
Property Value
| Type | Description |
|---|---|
| float | The start time as seconds from the beginning of the clip. |
TailFadeOutCurve
Gets the shape of the tail fade-out curve.
Declaration
MusicFadeCurve TailFadeOutCurve { get; }
Property Value
| Type | Description |
|---|---|
| MusicFadeCurve | The selected MusicFadeCurve. |
TailFadeOutCurveSamples
Gets the custom tail fade-out curve sampled into a uniform gain table over [0, 1], or null when a preset curve is selected. Values run from 1 (full volume) to 0 (silence).
Declaration
float[] TailFadeOutCurveSamples { get; }
Property Value
| Type | Description |
|---|---|
| float[] | The sampled gain table, or null for preset curves. |
TailFadeOutDuration
Gets the duration, in seconds, over which the outgoing tail voice fades to silence once the loop-out point is reached. A value of zero cuts the tail at the loop point (no tail).
Declaration
float TailFadeOutDuration { get; }
Property Value
| Type | Description |
|---|---|
| float | The tail fade-out duration in seconds. |
TailPreservingLoop
Gets whether the track uses tail-preserving looping, where the loop seam is bridged by a second audio source so reverb/ambience tails are not cut on restart.
Declaration
bool TailPreservingLoop { get; }
Property Value
| Type | Description |
|---|---|
| bool | True when tail-preserving looping is enabled. |
Title
Gets the title of the music track.
Declaration
string Title { get; }
Property Value
| Type | Description |
|---|---|
| string | The title as a string. |