savonet / liquidsoap

Liquidsoap is a statically typed scripting general-purpose language with dedicated operators and backend for all thing media, streaming, file generation, automation, HTTP backend and more.
http://liquidsoap.info
GNU General Public License v2.0
1.41k stars 130 forks source link

Crossfade with smart=true ignores overrides from annotations (liq_fade_in, liq_fade_out) #2340

Open Vaalyn opened 2 years ago

Vaalyn commented 2 years ago

Describe the bug When using crossfade with the smart parameter set to true annotations like liq_fade_in and liq_fade_out are not being applied.

As you can see in the Specific Crossfade Log there are liq_fade_in and liq_fade_out annotations present but the crossfade decides to not fade the tracks.

To Reproduce TBD

Expected behavior When using crossfade with the parameter smart set to true I'd expect it to prioritize annotations like liq_fade_in and liq_fade_out over the fades calculated by the smart crossfade.

Version details

Install method Built via Opam from source

Specific Crossfade Log

``` 2022/04/18 17:31:42 [cross_0:3] Analysis: -85.084823dB / -26.307293dB (5.96s / 5.96s) 2022/04/18 17:31:42 [crossfade_0:4] Before: ("on_air_timestamp", "1650302983.00") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("kind", "{audio=pcm(stereo),video=none,midi=none}") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("artist", "AspectOfTheStorm") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("decoder", "FFMPEG") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("title", "Avast Ochtavia's Orchestra (Remastered)") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("filename", "/var/azuracast/stations/vaachar/media/aspectofthestorm_-_avast_ochtavia_s_orchestra_-28remastered-29.mp3") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("temporary", "false") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("source", "next_song") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("media_id", "12") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("initial_uri", "annotate:title=\"Avast Ochtavia's Orchestra (Remastered)\",artist=\"AspectOfTheStorm\",duration=\"125.00\",song_id=\"36fd8143c4deb1b125da383593bfc14c\",media_id=\"12\",liq_amplify=\"0.00dB\",liq_fade_in=\"52.00\",liq_fade_out=\"28.00\",playlist_id=\"1\":media:aspectofthestorm_-_avast_ochtavia_s_orchestra_-28remastered-29.mp3") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("liq_fade_out", "28.00") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("song_id", "36fd8143c4deb1b125da383593bfc14c") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("status", "playing") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("replaygain_track_gain", "-7.59 dB") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("playlist_id", "1") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("on_air", "2022/04/18 17:29:43") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("liq_fade_in", "52.00") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("rid", "8") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("duration", "125.00") 2022/04/18 17:31:42 [crossfade_0:4] Before: ("liq_amplify", "0.00dB") 2022/04/18 17:31:42 [crossfade_0:4] After : ("on_air_timestamp", "1650303102.00") 2022/04/18 17:31:42 [crossfade_0:4] After : ("kind", "{audio=pcm(stereo),video=none,midi=none}") 2022/04/18 17:31:42 [crossfade_0:4] After : ("artist", "Bagpipe Brony") 2022/04/18 17:31:42 [crossfade_0:4] After : ("decoder", "FFMPEG") 2022/04/18 17:31:42 [crossfade_0:4] After : ("title", "Heart Trapped in Armor (Fanfic)") 2022/04/18 17:31:42 [crossfade_0:4] After : ("filename", "/var/azuracast/stations/vaachar/media/bagpipe_brony_-_heart_trapped_in_armor_-28fanfic-29.mp3") 2022/04/18 17:31:42 [crossfade_0:4] After : ("temporary", "false") 2022/04/18 17:31:42 [crossfade_0:4] After : ("source", "next_song") 2022/04/18 17:31:42 [crossfade_0:4] After : ("media_id", "15") 2022/04/18 17:31:42 [crossfade_0:4] After : ("initial_uri", "annotate:title=\"Heart Trapped in Armor (Fanfic)\",artist=\"Bagpipe Brony\",duration=\"132.00\",song_id=\"e2f5fb758087e58a991512648deebc87\",media_id=\"15\",liq_amplify=\"0.00dB\",liq_fade_in=\"29.50\",liq_fade_out=\"56.70\",playlist_id=\"1\":media:bagpipe_brony_-_heart_trapped_in_armor_-28fanfic-29.mp3") 2022/04/18 17:31:42 [crossfade_0:4] After : ("liq_fade_out", "56.70") 2022/04/18 17:31:42 [crossfade_0:4] After : ("song_id", "e2f5fb758087e58a991512648deebc87") 2022/04/18 17:31:42 [crossfade_0:4] After : ("status", "playing") 2022/04/18 17:31:42 [crossfade_0:4] After : ("replaygain_track_gain", "-6.32 dB") 2022/04/18 17:31:42 [crossfade_0:4] After : ("playlist_id", "1") 2022/04/18 17:31:42 [crossfade_0:4] After : ("on_air", "2022/04/18 17:31:42") 2022/04/18 17:31:42 [crossfade_0:4] After : ("liq_fade_in", "29.50") 2022/04/18 17:31:42 [crossfade_0:4] After : ("rid", "9") Incorrect BOM value Error reading lyrics, skipped Incorrect BOM value Error reading lyrics, skipped 2022/04/18 17:31:42 [crossfade_0:4] After : ("duration", "132.00") 2022/04/18 17:31:42 [crossfade_0:4] After : ("liq_amplify", "0.00dB") 2022/04/18 17:31:42 [crossfade_0:3] new >= old + margin, old <= medium and new <= high. 2022/04/18 17:31:42 [crossfade_0:3] Do not fade if it's already very low. 2022/04/18 17:31:42 [crossfade_0:3] Transition: crossed, no fade. ```
toots commented 2 years ago

Looks like the transition picked by the smart crossfade does not have any fades:

2022/04/18 17:31:42 [crossfade_0:3] Transition: crossed, no fade.