Should be able to crossfade between tracks.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Flywire |
New
|
Undecided
|
Unassigned |
Bug Description
Flywire should be able to crossfade between tracks.
The basic principle is easy. Flywire should simply start the next audio before the current one finishes, decreasing the volume of the first track to zero over a period while increasing the next one.
There are some questions that need to be considered here:
1) How do we offer this option in the GUI? Should we have one "crossfade" tickbox in the playlist, or should we offer the ability to select crossfade between tracks.
2) How do we specify the duration of the crossfade? Should it be offered per cross, or a general number of seconds?
3) If we're at the start of the playlist, then should we fade in, or should we just start playing at full volume?
4) Bug 537335 would also have an effect on the crossfade functionality. If there's a pause item following, then obviously we just need to fade out. Point (3) applies here also.
Some popular players have a crossfade feature, and this can get really annoying, particularly if it's not obvious how to switch it off, or if the granularity is not purposed for radio.
We have to be careful with this, because one of the big arguments against using crossfading players is that they don't work well with connected tracks. (Tracks that are all part of one piece of music, but split for referencing reasons.)
This problem mainly applies to classical music, which is one of our bigger clients. However, it's not restricted to that genre. Jenne Michel Jarre's "Oxygene" is an electronic piece that is symphonic in nature and the movements run into each other. The Corrs album "Forgiven, not forgotten" contains a few tracks that deliberately run into each other for dramatic effect.
We may need a flag in the library that is switched when the track was ripped, to indicate if there was a pause between tracks on the CD, which may help the player play them correctly. Or, to be more precise, a "link" between tracks that indicates if the tracks are played together whether they should or shouldn't contain a pause or be crossfaded.