HydrogenAudio

Hosted Forums => foobar2000 => General - (fb2k) => Topic started by: Kamen on 2014-03-31 15:17:42

Title: Turning crossfade on/off based on MP3 TAGs and adjusting volume
Post by: Kamen on 2014-03-31 15:17:42
Hello,

I want to be able to adjust the volume of the songs and turn cross fade on/off based on the song's tag data.
I managed to do the crossfade thingy using Continuator and then I just disabled/enabled it based on the tag by executing the appropriate menu command when a new song is loaded.
The problem is Continuator is crashing foobar every now and then and is not really stable.

I want other suggestions on how to do this. I tried using the DSP changer plugin + the built-in crossfader plugin but it doesn't seem to work at all.
Regarding the volume, I got that working by adjusting the global slider of foobar. However, I wish to leave the slider unmodified, yet still modify the played song volume. Is this possible at all?

Thanks for any clues!
Title: Turning crossfade on/off based on MP3 TAGs and adjusting volume
Post by: Daeron on 2014-03-31 15:33:52
Gapless crossfader (foo_dsp_crossfader) has titleformatting support.
Title: Turning crossfade on/off based on MP3 TAGs and adjusting volume
Post by: Kamen on 2014-04-01 02:36:11
Hey,

Thanks for the reply.

The problem with the titleformatting support is that I can only make the fader to stop the crossfading between the *current* song and the *next* song. I can't stop it from crossfading the *previous* song with the *current* song.
THat's it - the fading only stops when a song with a certain tag is loaded - but it doesn't prevent the previous song from fading out.

What I did with continuator is I watched both the current song and the next song's tags. If the next song's tag specify I don't want crossfade, I disable it right away for the current playing song, regardless of its tag. I reenable it again when the current and next song both need corssfade.

I would have used the same way iwth the gapless crossfader, but it doesn't have a "Disable" command, only "Enable". Unfortunately I cannot find a way to check or uncheck the "Enable" menu command state through code. Certainly running mainmenu_commands::g_execute diosn't do the trick.

Any suggestions?